본문 바로가기

Lang/C

[C] C와 C++ Integer의 MIN, MAX

728x90

# 헤더

C의 <limits.h> 에 정의되어 있습니다.

C++의 <limits> 에 <limits.h>가 포함되어 있습니다.

<iostream>으로도 사용할 수 있습니다.

# 정수 상수 리스트

상수 설명
CHAR_BIT 비트 필드가 없는 가장 작은 변수의 비트 수 8
SCHAR_MIN signed char의 최솟값 -128
SCHAR_MAX signed char의 최댓값 127
UCHAR_MAX unsigned char의 최댓값 255 (0xff)
CHAR_MIN char의 최소값 -128
CHAR_MAX char의 최댓값 127
MB_LEN_MAX 여러 문자 상수에서의 최대 바이트 수 5
SHRT_MIN short의 최솟값 -32768
SHRT_MAX short의 최댓값 32767
USHRT_MAX unsigned short의 최댓값 65535 (0xffff)
INT_MIN int의 최솟값 -2,147,483,648 (-21억)
INT_MAX int의 최댓값 2,147,483,648 (21억)
UINT_MAX unsigned int의 최댓값 4,294,967,295 (42억)
LONG_MIN long의 최솟값 -2,147,483,648 (-21억)
LONG_MAX long의 최댓값 2,147,483,647 (21억)
ULONG_MAX unsigned long의 최댓값 4,294,967,295 (0xffffffff) 
LLONG_MIN long long의 최솟값 -9,223,372,036,854,775,808 (-922경)
LLONG_MAX long long의 최댓값 9,223,372,036,854,775,808 (922경)
ULLONG_MAX unsigned long long의 최댓값 18,446,744,073,709,551,615 (1844경)
(0xffffffffffffffff)

 

# 예제

#include <stdio.h>
#include <limits.h>
int main() {

	int i = CHAR_MAX;
    
	printf("%d\n", i);		// char의 최댓값
	printf("%d\n", SHRT_MAX);	// short의 최댓값
	printf("%d\n", INT_MAX);	// int의 최댓값
	printf("%ld\n", LONG_MIN);	// long의 최솟값
	printf("%lld\n", LLONG_MAX);	// long long의 최댓값
	return 0;	
}
127
32767
2147483647
-2147483648
9223372036854775807

 

728x90