JINTBEAT Design Life

C언어 - Call by value vs Call by Reference 본문

🖥️ - C language

C언어 - Call by value vs Call by Reference

jintbeat_design 2025. 5. 18. 01:10
반응형

 

call by value, reference는 함수의 호출방식을 의미한다.

 

✏️ 값을 전달하는 형태의 함수 호출 : "Call by Value"

✏️ 메모리의 접근에 사용되는 주소 값을 전달하는 형태의 함수 호출 : "Call by Reference"

 

💡 Scanf 함수 호출 시 & 연산자를 붙이는 이유

scanf 함수호출이 완료되면 변수 num에는 값이 채워진다. 즉 프로그램 사용자로부터 값을 입력 받아서 변수 num에 그 값을 채우는 일을 scanf 함수가 한다. 이를 위해서 scanf 함수는 변수 num의 주소 값을 알아야 한다. 그래야 변수 num에 접근을 해서 값을 채워 넣을 수 있기 때문이다. scanf 함수 호출 시에 변수 num앞에 &연산자를 붙이는 이유이다. 

 

문자열은 그 자체로 배열의 주소 값이기 때문에 & 연산자를 붙일 필요가 없다.

 

반응형