C 언어에서 long long 타입은 (부호가 있는) 64비트 정수 타입입니다.
win32 환경이라도 long long 타입을 C 언어에서 쓸 수 있습니다.
아래의 소스는
Visual C++ 2010 Express
Dev-C++
TCC (Tiny-CC) 컴파일러중 하나면 컴파일하여 실행시킬 수 있습니다.
TCC 로는 -run 옵션을 사용하여
프롬프트> tcc -run testLongLong.c
하면 (실행 파일 만들지 않고) 소스를 직접 실행시킬 수 있습니다.
// Filename: testLongLong_001.c
//
// Compile & Link: gcc -o testComplexISOC99_002 testLongLong_001.c
// Execute: ./tesLongLong_001
//
// Or
//
// Compile & Link: cl testLongLong_001.c
// Execute: testLongLong_001
//
// Or
//
// Compile & Link: lc testLongLong_001.c
// Execute: testLongLong_001
//
// Or
//
// Compile: lcc -o testLongLong_001.obj testLongLong_001.c
// Link: lcclnk testLongLong_001.obj
// Execute: tesLongLong_001
#include <stdio.h>
#include <string.h>
int main(int argc, char** argv)
{
long long a = 1000000000L;
long long b = 1000000000L;
char buf[100];
printf("a * b = %lld * %lld = %lld\n", a, b, a*b);
sprintf(buf, "%lld", a*b);
printf("strlen(a * b) = strlen(%lld) = %d\n", a*b, strlen(buf));
return 0;
}
/*
-------------------
Result of execution:
-------------------
a * b = 1000000000 * 1000000000 = 1000000000000000000
strlen(a * b) = strlen(1000000000000000000) = 19
*/
'프로그래밍 > C' 카테고리의 다른 글
감마함수(gamma function)의 값을 (유효수자 15자리 까지 정밀하게) 계산하는 C 언어 소스 (0) | 2012.12.12 |
---|---|
리눅스 환경에 MPFR 설치와 테스트 (0) | 2012.04.30 |
ISOC99 를 지원하는 C 컴파일러로 복소수 계산하는 C 예제 (0) | 2012.04.28 |
C 언어로 GMP 라이브러리를 이용하여 30! 까지 정확하게 계산하기 (3) | 2010.08.13 |
C 언어의 long 타입으로 계산 가능한 최대 팩토리얼은? (0) | 2010.08.11 |