Computer >> 컴퓨터 >  >> 프로그래밍 >> C++

C++ 변수 초기화 완벽 가이드: 정적 초기화와 동적 초기화

변수(Variable)는 사용자가 직접 지정하는 이름으로, 데이터를 저장하기 위한 메모리 공간을 가리킵니다. 변수를 선언하고 초기화할 때는 자료형(data type)을 함께 사용하며, 이를 통해 해당 변수에 필요한 만큼의 메모리가 할당됩니다. C++에서는 int, char, float 등 다양한 자료형을 활용해 변수에 메모리를 할당할 수 있습니다.

변수 초기화의 두 가지 방법

변수를 초기화하는 방법은 크게 두 가지로 나뉩니다.

  • 정적 초기화(static initialization) − 프로그램 코드 작성 시점에 변수에 값을 직접 할당하는 방식입니다.
  • 동적 초기화(dynamic initialization) − 프로그램 실행 중(run time)에 변수에 값을 할당하는 방식입니다.

변수 초기화 문법

변수 초기화의 기본 문법은 다음과 같습니다.

datatype variable_name = value;

각 구성 요소의 의미는 아래와 같습니다.

  • datatypeint, char, float 등 변수의 자료형을 나타냅니다.
  • variable_name − 사용자가 지정한 변수의 이름입니다.
  • value − 변수를 초기화할 값입니다. 별도로 지정하지 않으면 기본값은 0입니다.

예제 코드

다음은 변수 초기화를 보여주는 예제입니다.

#include <iostream>
using namespace std;
int main() {
    int a = 20;
    int b;
    cout << "The value of variable a : " << a; // 정적 초기화
    cout << "\nEnter the value of variable b : "; // 동적 초기화
    cin >> b;
    cout << "\nThe value of variable b : " << b;
    return 0;
}

실행 결과

The value of variable a : 20
Enter the value of variable b : 28
The value of variable b : 28

코드 설명

위 프로그램에서는 두 개의 변수 ab를 선언했습니다.

int a = 20;
int b;

변수 a는 프로그램 내에서 20이라는 값으로 미리 초기화되는 정적 초기화 방식을 사용했으며, 변수 b는 실행 중 사용자의 입력을 받아 값이 결정되는 동적 초기화 방식을 사용했습니다.

cout << "The value of variable a : " << a; // 정적 초기화
cout << "\nEnter the value of variable b : "; // 동적 초기화
cin >> b;
cout << "\nThe value of variable b : " << b;

참고: 초기화되지 않은 지역 변수에는 예측할 수 없는 쓰레기 값(garbage value)이 들어 있을 수 있습니다. 따라서 변수를 선언할 때 항상 적절한 값으로 초기화하는 것이 안전하고 바람직한 프로그래밍 습관입니다.