printf() 함수 서식문자 - 10진수 양수(%u), 실수 표기법(%e, %E, %g, %G, %%)
서식 문자 %u를 사용하면 %d로 출력할 수 있는 양수의 범위보다 두 배 더 넓게 출력할 수 있습니다. 다음 예제는 서식 문자 %d와 %u의 차이를 설명하고 있는 코드입니다. 6행에서 서식 문자 %d로 표현할 수 있는 범위는 기본적으로 int타입의 범위인 -2,147,483,648 ~ 2,147,483,647을 출력하고 있습니다. 10행에서 최대값보다 큰 값을 출력하려고 하니까 이상한 음수 값이 출력됩니다. 이는 overflow가 발생했기 때문이다. 2,147,483,650은 2,147,483,647보다 3만큼 overflow하였고, 그 수만큼 음수에서 빠지게 됩니다. 따라서 위 결과처럼 -2147483646이 되는 것입니다. 12행에서 서식 문자 %d로 표현할 수 있는 최대값 2,147,483,647보..
2021. 8. 18.