Language/C언어
배열을 함수 인자로 전달받는 방법
Triany
2011. 2. 26. 19:54
int pArr[]과 int *pArr[]은 완전히 동일한 것.
=> 둘다 int형 포인터 변수임
(int pArr[]을 사용하는 이유: 함수의 매개 변수를 선언하는 데 있어서 인자로 배열이 전달된다는 것을 좀 더 명확히 할 수 있도록 "int pArr[]"이라는 선언을 허용하는 것일 뿐
1)int *parr 방식
#include <stdio.h>
int main(void){ sumofarr=arradd(arr, sizeof(arr)/sizeof(int));
for(i=0; i<n; i++) return sum; |
2)int pArr[]방식
#include <stdio.h>
max = maxvalue(arr, sizeof(arr)/sizeof(int));
int maxvalue(int pArr[], int n){ return max; |
둘다 완전히 같은 표현이지만, int arr[]아 같은 선언은 매개 변수 선언시 예외적으로 허용되는 방법에 지나지 않으므로, 되도록이면 int *arr과 같은 선언을 사용하는 것이 좋다.
(단 어느 방법으로 구현하든지 이해할 수 있도록 두 방법다 숙지해야 함.)