C/기초

오버플로우

컴공 윤서혜 학습일기 2019. 7. 10. 15:54
#include <stdio.h>
#include <limits.h>

int main(void)
{
	int x = INT_MAX;
	printf("int형의 최대값 x는 %d 입니다.\n", x); 
	printf("int형의 오버플로우를 봅시다. 만약 1이라도 더한다면 %d처럼 됩니다.",x+1);
	
	return 0;
}

출력하게 되었을때는 -2억정도의 숫자가 나온다. 이것이 오버플로우 현상인데, 숫자의 한개치를 뛰어넘으면 제일 낮은 값으로 출력하게 되는 현상을 말한다.

 

 

또한 #include<limits.h>를 넣지않으면 int형의 최대치 숫자인 INT_MAX를 출력하지 못한다.

'C > 기초' 카테고리의 다른 글

반복문  (0) 2019.07.25
JAVA와 C언어의 차이점  (0) 2019.07.25
자료형 (char, int && 8진수, 10진수, 16진수)  (0) 2019.07.23
메모리크기 알려주기(sizeof(x))  (0) 2019.07.10
C++ 기본내용  (0) 2019.07.10