Wednesday, August 01, 2007
C언어, unsigned long 의 printf 함수 포맷
C의 printf 함수 포맷에서, "ld (소문자L+소문자D)"는 "long"을 의미하고, "lu (소문자L+소문자U)"는 "unsigned long"을 의미합니다. 그렇지만 그냥 "u" 라고만 해도 unsigned long 형으로 숫자가 출력됩니다. 다음 예제와 같습니다.
예제 소스 파일명: example.cpp
참고: ▶▶ C언어/Perl] printf() 함수의 포맷 스트링 %s, %d - Format Specifier
예제 소스 파일명: example.cpp
#include <stdio.h>
int main(void) {
// unsigned long 의 최대값 대입: 4294967295UL (0xffffffffUL)
unsigned long num = 0xFFFFFFFFUL;
printf("%lu\n", num); // 4294967295
// 또는 이렇게 %u 를 사용
printf("%u\n", num); // 4294967295
// 그러나 %ld 나 %d 를 사용하여 unsigned형을 출력하면 안됨
printf("%d\n", num); // -1
return 0;
}
int main(void) {
// unsigned long 의 최대값 대입: 4294967295UL (0xffffffffUL)
unsigned long num = 0xFFFFFFFFUL;
printf("%lu\n", num); // 4294967295
// 또는 이렇게 %u 를 사용
printf("%u\n", num); // 4294967295
// 그러나 %ld 나 %d 를 사용하여 unsigned형을 출력하면 안됨
printf("%d\n", num); // -1
return 0;
}
참고: ▶▶ C언어/Perl] printf() 함수의 포맷 스트링 %s, %d - Format Specifier
tag: cpp
C언어 | C/C++ (Visual C++)
<< Home