NULL

함수 인자로 배열전달 본문

C

함수 인자로 배열전달

1924 2016. 12. 18. 21:07

인자전달의 기본방식은 값의 복사다.


age를 인자로 전달할때 값이

age변수로 전달되는게 아니라

age의 값을 복사해서 전달한다.





C언어는 매개변수로 배열의선언을 허용하지 않는다.

배열을 통째로 복사하는 방법은

C언어에선 존재하지 않기때문에


그 대신에 배열의 주소값을

전달 하는 방식을 취한다.


배열의 이름을 전달하고

길이는 sizeof(배열이름)/sizeof(타입)

이렇게 하면 길이가 나오게 된다.




매개변수선언에서

int * param과 int param[]은

동일한 선언이다.

뭘 쓰게 되던 포인터이기때문이다.

다만 배열로 선언해주는 이유는

배열을 넘기는 표현으로 쓴다.


매개변수 의외엔

동일하지않으니 주의하자.


'C' 카테고리의 다른 글

포인터 const선언  (0) 2016.12.19
값과 주소값의 함수호출  (0) 2016.12.19
포인터 배열의 이해  (0) 2016.12.18
문자열 배열과 문자열 포인터  (0) 2016.12.18
포인터와 배열관계  (0) 2016.12.18
Comments