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키워드를 사용하여 컴파일할 때 방지한다.