전역변수 지역변수 예제

변수 s는 함수 f()를 호출하기 전에 “나는 Geeksforgeeks를 사랑합니다”문자열로 정의됩니다. f()의 유일한 문은 “print s” 문입니다. 로컬 s가 없기 때문에 전역 s의 값이 사용됩니다. C 언어에는 전역 키워드가 없습니다. 그러나 함수 외부에서 선언된 변수에는 “파일 범위”가 있으므로 파일 내에 표시됩니다. 파일 범위로 선언된 변수는 선언과 컴파일 단위(.c 파일)의 끝 사이에 표시됩니다(로컬 변수와 같은 더 가까운 범위에서 같은 이름의 개체에 의해 그림자처리되지 않는 한). 암시적으로 외부 연결이 있으며 선언을 포함하는 .c 파일 또는 컴파일 단위뿐만 아니라 전체 프로그램을 형성하기 위해 연결된 다른 모든 컴파일 단위에도 표시됩니다. 그러나 외부 링크는 다른 파일에서 이러한 변수를 사용하기에는 충분하지 않습니다. 이 작업은 외부 키워드를 사용하여 각 파일의 변수를 선언하여 수행됩니다. (각 파일에 선언되지만 하나만 정의될 수 있습니다.) 이러한 외부 선언은 프로젝트의 모든 .c 파일이 하나 이상의 .h 파일을 포함하는 것이 일반적이기 때문에 공유 헤더 파일에 배치되는 경우가 많습니다. 이 전역 액세스 메커니즘이 문제가 있다고 판단되는 경우 변수를 파일 범위로 제한하는 정적 키워드를 사용하여 비활성화할 수 있으며 외부와 함께 가져오기를 시도하여 컴파일(또는 연결) 오류를 발생시게 됩니다. [3] 같은 이름의 변수가 중첩 된 블록 내에 정의되지 않는 한 로컬 변수는 중첩 블록 내에 표시됩니다.

C++의 변수 범위 함수 또는 로컬 변수라고 하는 블록 내부에서 모든 함수 외부에 선언되고 주 함수를 포함한 모든 함수에서 액세스할 수 있는 변수를 전역 변수라고 합니다. 메인에서 i는 글로벌이며 5로 증가합니다. 나는 func에서 내부이며 11로 증가할 것입니다. 컨트롤이 main으로 돌아오면 내부 변수가 죽고 i에 대한 참조가 전역으로 표시됩니다. 전역 변수와의 상호 작용 메커니즘을 전역 환경(전역 상태 참조) 메커니즘이라고 합니다. 전역 환경 패러다임은 모든 변수가 공유 메모리가 없는 로컬인 로컬 환경 패러다임과 대조되므로 모든 상호 작용을 메시지 전달로 다시 수행할 수 있습니다.

This entry was posted in Uncategorized. Bookmark the permalink.

Fatal error: Cannot redeclare class walker in /home/content/90/8606590/html/booksnboots/wp-content/themes/teentouch/comments.php on line 10