프로그래머로써 프로젝트 진행시 코딩을 하다보면, 최소값이나, 최대값을 구하는 일은 다 반사다. 하지만, 어떠한 두 값을 비교할 때 가끔 문제와 마주치는 경우가 있다.
순차적으로 비교할 시 최초의 값을 비교할려는 변수의 값을 얼마로 초기화해야 할지 모를 때 이다. 이때 limits.h를 사용하면 굉장히 간편하게 해결할 수 있다.
자신이 선언한 자료형의 범위를 값으로 알려주므로, 굉장히 쉽게 초기값을 정할 수 있다. 만약 자신이 구하고 싶은게 최대값이다. 그래서 초기값을 0으로 했다면...?? 그런데 만약 최대값이 음수라고 해보자. 그렇다면 자신이 원하는 값이 아닌 초기값은 0 이 될 것이다. 자신이 어떠한 값을 초기값으로 놓아야 좋은가에 대한 문제를 쉽게 해결해 준다.
limits.h 는 c언어의 표준 라이브러리로써, 정수형의 범위를 알려준다. 위의 라이브러리를 이용하여 얻을 수 있는 값은 아래와 같다.
이름 | 설명 | 최소 크기(더 클 수 있음) |
---|---|---|
CHAR_BIT | char의 비트 수 | 8 |
SCHAR_MIN | signed char의 최소값 | -127 |
SCHAR_MAX | signed char의 최대값 | 127 |
UCHAR_MAX | unsigned char의 최대값 | 255 |
CHAR_MIN | char의 최소값 | SCHAR_MIN 또는 0 |
CHAR_MAX | char의 최대값 | SCHAR_MAX 또는 UCHAR_MAX |
MB_LEN_MAX | 멀티바이트 문자의 최대 바이트 수 | 1 |
SHRT_MIN | short int의 최소값 | -32767 |
SHRT_MAX | short int의 최대값 | 32767 |
USHRT_MAX | unsigned short int의 최대값 | 65535 |
INT_MIN | int의 최소값 | -32767 |
INT_MAX | int의 최대값 | 32767 |
UINT_MAX | unsigned int의 최대값 | 65535 |
LONG_MIN | long int의 최소값 | -2147483647 |
LONG_MAX | long int의 최대값 | 2147483647 |
ULONG_MAX | unsigned long int의 최대값 | 4294967295 |
위의 이름을 이용하여 최소값 최대값을 저장하는 값의 초기값으로 사용하자^^.
'Language > C,C++' 카테고리의 다른 글
[C] noreturn (0) | 2015.11.29 |
---|---|
[C언어] Header File 한번만 포함하기. (0) | 2015.09.13 |
텍스트 파일 한줄씩 입력받기. (0) | 2014.05.19 |
C에서 예외처리 하기 (0) | 2014.04.08 |
[C언어] 동적할당한 메모리 크기 알기 (0) | 2013.12.28 |