c
함수의 전달인수 배열
장곰부대
2012. 11. 12. 19:03
배열이름은 포인터다
=> ar[i]=*(ar+i)
1.포인터
long sum(int *ar, int n);
2.배열
long sum(int ar[], int n);
sum()함수 배열을 전달인수로 받는법
1. 배열의 포인터, 배열의 수 | long sum(int ar[], int n){ int i; long total=0; for(i=0;i<n;i++) total+=ar[i]; return total; } |
2. 배열의 시작과 끝을 알려주는 포인터 | long sum2(int *start, int *end){ long total=0; while(start<end){ total+=*start; start++; return total; } |
효율성과 공간절약, 작업속도를 위해 배열은 웬만하면 포인터로 전달하며
포인터를 사용하면 데이터의 무결성에 위반되므로 코딩 실수로 인해 원본 데이터를 회손할 가능성이 있다.
이때 const키워드를 사용하여 컴파일할 때 방지한다.