배열이름은 포인터다
=> 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키워드를 사용하여 컴파일할 때 방지한다.
'c' 카테고리의 다른 글
다차원 배열과 포인터 (0) | 2012.11.14 |
---|---|
const 와 포인터 (0) | 2012.11.13 |
초기화와 스토리지 클래스 (0) | 2012.11.10 |
switch (0) | 2012.11.09 |
continue, go to , break (0) | 2012.11.08 |