c
04_Literal
RongBee
2023. 3. 15. 20:35
Literal은 상수라는 뜻이다.
상수는 변하지 않는 값을 의미하는데 코딩을 하다 보면 변하지 않는 값을 지정해 줘야 할 때가 있을 것이다.
해당 공간(변수)를 상수로 만드는 키워드에는 const 가 있다.
해당 키워드가 붙은 변수는 값이 변할 수 없도록 지정된다.
사용법은 const Datatype 변수명 이다.
float a = 3.14f;
float b = 0.111111f;
float형 상수는 끝에 f를 작성해준다.
const char ch = 'a'; // 문자형 상수 ch에 a라는 상수 값을 대입
문자형 상수는 양 옆에 ' '(작은 따옴표)를 작성해준다.
#include <stdio.h>
int main() {
// 문자형 상수
char c1 = 'A';
char c2 = '3';
printf("c1 = %c\n", c1); // 출력: c1 = A
printf("c2 = %c\n", c2); // 출력: c2 = 3
// 문자열 상수
char str1[] = "Hello, world!";
char str2[] = "12345";
printf("str1 = %s\n", str1); // 출력: str1 = Hello, world!
printf("str2 = %s\n", str2); // 출력: str2 = 12345
return 0;
}
문자형 상수와 문자열 상수를 출력하는 방법이다.
const int hpPotion = 50; // 정수형 상수 hpPotion에 50의 값을 저장
hpPotion = 100; // 변경할 수 없다는 오류가 난다.
상수를 변경하려 하면 오류가 난다.
메이플 스토리라는 게임의 '빨간 포션'이 플레이어의 HP를 50 회복 시켜준다.
그런데 const가 아닌 그냥 int형 으로 만든다면 누군가의 실수나 행동으로 인해
게임 내의 '빨간 포션'의 설명에선 50을 회복시키지만,50이 아닌 값이 회복되게 될 수 있다.
빨간포션 이미지 출처 :https://maplestory.fandom.com/ko/wiki/%EB%B9%A8%EA%B0%84_%ED%8F%AC%EC%85%98