그러면 다음 코드의 결과는 무엇일까요?
static_global.c
#include <stdio.h> int a = 1; main() { int a = 2; printf("a의 값은 %d입니다.\n", a); }
1 또는 2 중 어떤 값이 출력될까요?
정답은 2입니다. 전역 변수 a를 생성하고 1로 초기화하였으며 main() 함수에서 지역 변수 a를 선언하고 2로 초기화하였습니다. main() 함수 안에서 변수 a의 값을 출력하고자 할 때 같은 이름의 전역 변수와 지역 변수가 존재한다면 지역 변수가 우선함을 알 수 있습니다.