開發環境:WIN7(32位)、VC6
數值轉字符串
-----------------------
printf("%I64u", (__int64)(1<<64)-1);
輸出
18446744073709551615
如果不加類型限定(__int64)
printf("%I64u", (1<<64)-1);
則默認按操作系統位數計算即時值,輸出:
4294967295
字符串轉數值
------------------------
可以使用__atoi64(),該函數定義在 stdlib.h 頭文件中。
unsigned __int64 nU64 = _atoi64("18446744073709551615");
如果給定"18446744073709551616"就輸出 0 啦,哈哈!