64비트 정수 __int64 사용법: 변수 선언, printf()로 출력
Programming/C/C++ / 2012. 1. 12. 12:54
32비트 정수형인 int 는 "unsigned int"라 하더라도
4294967295 (사십이억 구천사백구십육만 칠천이백구십오)
밖에는 표현하지 못하기에, 64비트 정수가 필요합니다.
비주얼C++ 에서는 버전 4.0부터 __int64 라는 이름으로 지원되고 있습니다.
출처 : http://mwultong.blogspot.com/2006/10/c-64-int64-printf.html
4294967295 (사십이억 구천사백구십육만 칠천이백구십오)
밖에는 표현하지 못하기에, 64비트 정수가 필요합니다.
비주얼C++ 에서는 버전 4.0부터 __int64 라는 이름으로 지원되고 있습니다.
__int64, unsigned __int64 선언, printf() 출력 예제
#include <stdio.h>
void main(void) {
// signed long long
// -9223372036854775808 ~ 9223372036854775807
__int64 x = 9223372036854775807i64;
// unsigned long long
// 0 ~ 18446744073709551615
unsigned __int64 ux = 0xFFFFFFFFFFFFFFFFui64;
// signed
printf("%I64d\n", x); // 출력 결과: 9223372036854775807
// unsigned
printf("%I64u\n", ux); // 출력 결과: 18446744073709551615
}
void main(void) {
// signed long long
// -9223372036854775808 ~ 9223372036854775807
__int64 x = 9223372036854775807i64;
// unsigned long long
// 0 ~ 18446744073709551615
unsigned __int64 ux = 0xFFFFFFFFFFFFFFFFui64;
// signed
printf("%I64d\n", x); // 출력 결과: 9223372036854775807
// unsigned
printf("%I64u\n", ux); // 출력 결과: 18446744073709551615
}
출처 : http://mwultong.blogspot.com/2006/10/c-64-int64-printf.html
반응형
'Programming > C/C++' 카테고리의 다른 글
Convert char* to string (0) | 2012.01.19 |
---|---|
파일 존재 유무 및 속성 조사 access() (0) | 2012.01.19 |
int to long long type casting (0) | 2012.01.09 |
Convert String to int / Convert int to String in C++ (0) | 2012.01.01 |
정수 실수 종류(자료형;데이터형), 최소값 최대값; char int float, Data Type Ranges (0) | 2011.11.25 |