변수의 가려짐


변수의 가려짐

지역변수 #include <stdio.h> int main(void) { int num = 1; if (num == 1) { int num = 7; // num += 10; printf("if문 내 지역변수 num: %d \n", num); } printf("main 함수 내 지역변수 num: %d \n", num); return 0; } if문 내 지역변수 num: 17 main 함수 내 지역변수 num: 1 동일한 변수의 이름을 사용하였을 때, 지역변수는 외부에 선언된 동일한 이름의 변수를 가리게 된다. 즉 위 코드에서 if내에서는 main 함수의 num이 가려진다. (int num = 7; 을 주석처리하면 if문에서 접근하는 num은 main 함수의 num이 되고 결과는 11, 11이 나오게 된다.) 지역변수와 전역변수 #include <stdio.h> int Add(int val); int num = 1; int main(void) { int num = 5; printf("...


#c언어 #변수 #전역변수 #지역변수

원문링크 : 변수의 가려짐