printf 로 long long (64bit) 값 출력하기.
2007. 7. 15. 13:22ㆍpast
long long i;
i = 562902742346880;
printf("%lld", i);
결과
33565824
이렇게 하면 된다고 해서 해봤다.
안된다..ㅜ.ㅜ 적어도 Visual C++ .NET 2003 에서는
그냥
printf("%d", i);
와 같은 결과가 나온다.
어떻게 해야 하나 고민하다. site 하나를 찾았다.
printf 의 trick 에 대한 얘기가 담겨 있다.
64bit 변수 출력에 관한 얘기가 있다.
그리고 string을 부분별로 출력하거나 하는 등의 얘기도 있다.
http://weblogs.asp.net/george_v_reilly/archive/2005/06/02/410069.aspx
그래서 결론은...
long long i;
i = 562902742346880;
printf("%I64d", i);
i = 562902742346880;
printf("%lld", i);
결과
33565824
이렇게 하면 된다고 해서 해봤다.
안된다..ㅜ.ㅜ 적어도 Visual C++ .NET 2003 에서는
그냥
printf("%d", i);
와 같은 결과가 나온다.
어떻게 해야 하나 고민하다. site 하나를 찾았다.
printf 의 trick 에 대한 얘기가 담겨 있다.
64bit 변수 출력에 관한 얘기가 있다.
그리고 string을 부분별로 출력하거나 하는 등의 얘기도 있다.
http://weblogs.asp.net/george_v_reilly/archive/2005/06/02/410069.aspx
그래서 결론은...
long long i;
i = 562902742346880;
printf("%I64d", i);