다음 코드를 보고 결과가 어떻게 나올지 생각해 보세요.
function_variable.c
#include <stdio.h> void abc(int a, int b) { a = a * 10; b = b * 10; } main() { int a; int b; a = 1; b = 2; abc(a, b); printf("a의 값은 %d이고 b의 값은 %d입니다.\n", a, b); }
실행 결과
a의 값은 1이고 b의 값은 2입니다.
아마 출력 결과가 “a의 값은 10이고 b의 값은 20입니다.”라고 생각한 사람도 많을 것입니다. 그렇다면 어떤 이유에서 a = 1, b = 2라는 결과가 나왔을까요?