c 상수

떵떵·2022년 5월 21일
0

상수는 변하지는 않는 값이다.

변수는 한 번 선언하면 값을 계속 바꿀 수 있지만 상수는 첫 선언할 때만 값을 할당할 수 있으며 그 이후로는 값을 변경할 수 없다.

	const int con1 = 10

'con1'은 상수, 대입하는 값 10은 리터럴이다.

리터럴(literal) = '문자 그대로', c언어에서는 값 그 자체를 뜻하며 상수는 변수처럼 리터럴이 저장되는 공간이다.

상수는 코딩 중에 실수로 변수의 값을 바꾸는 것을 방지하기 위해 사용하며 코드의 의도를 명확하게 만들어준다.

리터럴의 표기법

정수: %d - 10
실수: %f - 0.1f
문자: %c - 'a'
문자열: %s - "Hello World"

8진수: 0%o - 017
16진수: 0x%X - 0x1F

상수 선언

int main()
{
	const int con1 = 10;
    const float con2 = 0.4f;
    const char con3 = 'o';
    
    printf("%d, %f, %c\n", con1, con2, con3);
    
}

위가 상수의 예 이며 만약 상수에 새로운 값을 넣으려고 하면 커파일 에러가 발생하고 다른 값을 사용하려면 새 상수를 선언해야 한다.

리터럴 접미사

리터럴의 크기를 명확하게 표현하기 위해 접미사(suffix)를 사용한다.

long: %ld, -10L
longlong: %lld, -10LL

unsigned int: %u, 10U
unsigned long: %lu, 10UL
unsigned longlong: %llu, 10ULL

flost: %f, 0,1f
double: %f, 없음
long double: %Lf, 0.1l

변수를 선언할 때도 정수 자료형으로 크기를 정할 수 잇지만 리터럴은 접미사를 활용하여 크기를 명시적으로 표기한다.

접미사는 대문자, 소문자 모두 사용가능하며 8진수, 16진수도 가능하다.

0개의 댓글