본문 바로가기

프로그래밍 언어/C

C언어 변수와 상수, 차이점과 올바른 사용법

C언어 변수와 상수, 차이점과 올바른 사용법

C언어에서 데이터를 저장하고 관리하는 핵심 요소는 **변수(Variable)**와 **상수(Constant)**입니다. 변수는 프로그램 실행 중 값이 변경될 수 있는 저장 공간이며, 상수는 변경할 수 없는 값으로 특정한 의미를 유지할 때 유용합니다. 본 글에서는 변수와 상수의 차이점을 명확히 이해하고, 올바른 사용법과 주의할 점을 상세히 살펴보겠습니다.

 

 

목차

  1. 변수란 무엇인가?
  2. 상수란 무엇인가?
  3. 변수와 상수의 차이점
  4. C언어의 변수 유형
  5. C언어에서 상수를 선언하는 방법
  6. 변수와 상수 사용 시 주의할 점
  7. 결론

 

1. 변수란 무엇인가?

변수는 **값을 저장하는 메모리 공간의 이름**입니다. 프로그램 실행 중 변수의 값은 변경될 수 있으며, 다양한 데이터 유형을 저장할 수 있습니다.

🔹 변수 선언 방법

#include <stdio.h>

int main() {
    int age = 25;  // 정수형 변수 선언
    float height = 175.5;  // 실수형 변수 선언
    char grade = 'A';  // 문자형 변수 선언

    printf("나이: %d, 키: %.1f, 학점: %c\n", age, height, grade);
    return 0;
}

 

 

 

2. 상수란 무엇인가?

상수는 **값이 한 번 정의되면 변경할 수 없는 데이터**입니다. 코드의 가독성을 높이고, 실수를 방지하는 데 사용됩니다.

🔹 상수 선언 방법

  • #define 매크로 → 전처리기에서 치환
  • const 키워드 → 변경 불가능한 변수 선언
#include <stdio.h>

#define PI 3.14159  // 매크로 상수
const int MAX_USERS = 100;  // const 상수

int main() {
    printf("원주율: %f, 최대 사용자 수: %d\n", PI, MAX_USERS);
    return 0;
}

 

 

 

3. 변수와 상수의 차이점

구분 변수 (Variable) 상수 (Constant)
값 변경 가능 여부 가능 불가능
메모리 저장 방식 RAM에 저장 일부 상수는 ROM에 저장
사용 목적 데이터를 동적으로 변경 변하지 않는 값을 저장

 

 

 

4. C언어의 변수 유형

변수는 저장하는 데이터의 종류에 따라 여러 유형으로 나뉩니다.

  • 정수형 (int, long) → 정수를 저장
  • 실수형 (float, double) → 소수점 값을 저장
  • 문자형 (char) → 단일 문자 저장
  • 배열 (char[], int[]) → 여러 개의 값을 저장

 

 

 

 

5. C언어에서 상수를 선언하는 방법

C언어에서는 상수를 선언하는 방식이 여러 가지 있습니다.

  • #define 매크로 → 전처리기에 의해 치환됨
  • const 키워드 → 변수를 변경 불가능하게 설정
  • enum 열거형 → 여러 개의 관련 상수를 그룹화

 

 

 

6. 변수와 상수 사용 시 주의할 점

변수와 상수를 사용할 때 몇 가지 유의해야 할 점이 있습니다.

🔹 변수 사용 시 주의점

  • **초기화하지 않은 변수 사용 금지** → 예기치 않은 동작 발생
  • **변수의 범위(Scope) 이해 필요** → 지역변수와 전역변수 구분

🔹 상수 사용 시 주의점

  • **매크로 상수는 디버깅이 어려울 수 있음** → const를 선호
  • **상수를 변경하려는 시도 금지** → 컴파일 오류 발생

 

 

 

7. 결론

C언어에서 **변수와 상수는 데이터 저장의 핵심 개념**입니다. 변수는 값이 변할 수 있지만, 상수는 고정된 값을 유지하며 코드의 안정성을 높입니다. 올바른 선언과 사용법을 익혀, 유지보수성과 성능이 뛰어난 코드를 작성해야 합니다.