산업 제조
산업용 사물 인터넷 | 산업자재 | 장비 유지 보수 및 수리 | 산업 프로그래밍 |
home  MfgRobots >> 산업 제조 >  >> Industrial programming >> C 언어

C++ 변수 범위 이해: 지역 변수 vs 전역 변수

범위(scope)는 프로그램의 한 영역을 말하며, 크게 세 곳에서 변수를 선언할 수 있습니다.

함수와 매개변수는 이후 장에서 배우겠습니다. 여기서는 지역 변수와 전역 변수가 무엇인지 설명하겠습니다.

지역 변수

함수나 블록 내부에서 선언된 변수를 지역 변수라 합니다. 그 함수나 코드 블록 내부의 문장에서만 사용할 수 있습니다. 지역 변수는 자신의 함수 외부에서는 알 수 없습니다. 지역 변수 사용 예제:

Live Demo
#include <iostream>
using namespace std;
int main () {
    // 지역 변수 선언:
    int a, b;
    int c;
    // 실제 초기화
    a = 10;
    b = 20;
    c = a + b;
    cout << c;
    return 0;
}

전역 변수

전역 변수는 모든 함수 외부, 보통 프로그램 상단에 정의됩니다. 전역 변수는 프로그램의 수명 동안 값을 유지합니다.

전역 변수는 어떤 함수에서든 접근할 수 있습니다. 즉, 선언 후 프로그램 전체에서 사용할 수 있습니다. 전역 변수와 지역 변수 사용 예제:

Live Demo
#include <iostream>
using namespace std;
// 전역 변수 선언:
int g;
int main () {
    // 지역 변수 선언:
    int a, b;
    // 실제 초기화
    a = 10;
    b = 20;
    g = a + b;
    cout << g;
    return 0;
}

프로그램에서 지역 변수와 전역 변수에 같은 이름을 사용할 수 있지만, 함수 내부에서 지역 변수의 값이 우선합니다. 예:

Live Demo
#include <iostream>
using namespace std;
// 전역 변수 선언:
int g = 20;
int main () {
    // 지역 변수 선언:
    int g = 10;
    cout << g;
    return 0;
}

위 코드를 컴파일하고 실행하면 다음 결과가 나옵니다.

10

지역 변수와 전역 변수 초기화

지역 변수가 정의되면 시스템이 초기화하지 않으므로 직접 초기화해야 합니다. 전역 변수는 정의 시 시스템이 자동으로 다음과 같이 초기화합니다.

데이터 타입초기값
int0
char'\0'
float0
double0
pointerNULL

변수를 올바르게 초기화하는 것은 좋은 프로그래밍 관행이며, 그렇지 않으면 프로그램이 예기치 않은 결과를 낼 수 있습니다.

C 언어

  1. C# 변수와 기본 데이터 타입 완벽 가이드
  2. C# 변수 범위(Scope) 이해: 클래스, 메서드, 블록 레벨
  3. C++ 변수, 리터럴, 상수 마스터하기: 종합 가이드
  4. C++ 연산자 마스터하기: 유형별 완벽 가이드와 실전 예제
  5. C++ 주석: 가독성 높고 유지보수하기 좋은 코드 작성법
  6. C 변수, 상수, 리터럴: 완전 가이드
  7. C 저장 클래스 이해: 범위, 생명주기, 성능
  8. 파이썬 전역, 지역, 비지역 변수 이해하기
  9. C++ 변수와 데이터 타입: int, double, char, string, bool 전문가 가이드
  10. C++ 포인터 완전 정복: 개념, 예제, 실전 활용