출처 : 윤성우. 윤성우의 열혈 C 프로그래밍. 오렌지미디어, 2010.
- 몰랐던 or 까먹었던 내용 위주 정리
함수호출 시 전달되는 인자의 값은 매개변수에 복사가 된다.
값을 전달하는 형태의 함수호출 : Call-by-value
주소 값을 전달하는 형태의 함수호출 : Call-by-reference
포인터 변수가 참조하는 대상의 변경을 허용하지 않는 const 선언
"함수호출 시 전달되는 인자의 값은 매개변수에 복사가 된다."
주소 값만 알면 해당 메모리 공간에 얼마든지 접근 가능
int param[]과 int * param은 완전히 동일한 선언이다.
함수 내에서는 인자로 전달된 배열의 길이를 계산할 수 없다.
구분 기준 : 함수의 인자로 전달되는 대상
값을 전달하는 형태의 함수호출 : Call-by-value
주소 값을 전달하는 형태의 함수호출 : Call-by-reference (scanf 함수의 호출)
const int * ptr = #
: 포인터 변수 ptr을 이용해서 ptr이 가리키는 변수에 저장된 값을 변경하는 것을 허용하지 않습니다.
int * const ptr = #
: 한번 가리키기 시작한 변수를 끝까지 가리켜야 한다.
댓글