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

C언어 상수(Constant)란 무엇인가? 예제로 쉽게 이해하기

상수(Constant)는 한 번 정의되면 프로그램 실행 도중에 값이 절대 변경되지 않는 변수입니다. 즉, 고정된 값을 참조하도록 변수를 상수로 선언할 수 있으며, 이러한 값은 리터럴(literal)이라고도 부릅니다. C언어에서 상수를 정의하려면 반드시 const 키워드를 사용해야 합니다.

상수 선언 문법

C 프로그래밍 언어에서 상수를 선언하는 기본 문법은 다음과 같습니다.

const type VariableName;
(또는)
const type *VariableName;

상수의 종류

C언어에서 사용되는 상수는 크게 다음과 같은 유형으로 나눌 수 있습니다.

  • 정수 상수(Integer Constants) − 예: 1, 0, 34, 4567

  • 실수 상수(Floating-point Constants) − 예: 0.0, 156.89, 23.456

  • 8진수 및 16진수 상수(Octal & Hexadecimal Constants) − 16진수: 0x2a, 0xaa 등 / 8진수: 033, 024 등

  • 문자 상수(Character Constants) − 예: 'a', 'B', 'x'

  • 문자열 상수(String Constants) − 예: "TutorialsPoint"

아래 다이어그램을 통해서도 상수의 다양한 유형을 확인할 수 있습니다.

C언어 상수(Constant)란 무엇인가? 예제로 쉽게 이해하기

예제 1: 상수를 활용한 값 계산

다음은 상수를 사용하여 숫자의 곱셈 결과를 계산하는 C 프로그램입니다.

#include<stdio.h>
int main(){
   const int number=45;
   int value;
   int data;
   printf("enter the data:");
   scanf("%d",&data);
   value=number*data;
   printf("The value is: %d",value);
   return 0;
}

실행 결과

위 프로그램을 실행하면 다음과 같은 결과가 출력됩니다.

enter the data:20
The value of number is: 900

위 프로그램처럼 상수로 선언된 값은 일반 변수처럼 활용할 수 있지만, 만약 상수로 선언된 number의 값을 변경하려고 시도하면 컴파일러가 오류를 발생시킵니다.

예제 2: 상수 값 변경 시 발생하는 오류

다음은 상수(const)로 선언된 값을 변경하려고 할 때 오류가 발생하는 것을 보여주는 C 프로그램입니다.

#include<stdio.h>
int main(){
   const int number=45;
   int data;
   printf("enter the data:");
   scanf("%d",&data);
   number=number*data;
   printf("The value of number is: %d",number);
   return 0;
}

실행 결과

위 프로그램을 실행하면 다음과 같이 컴파일 오류가 발생합니다.

error

이처럼 상수는 한 번 초기화된 이후에는 값을 수정할 수 없기 때문에, 프로그램 전체에서 변경되지 않아야 하는 고정값(예: 원주율 π, 최대 배열 크기 등)을 안전하게 관리할 때 매우 유용합니다.