我有一個程序,它裏面我把Q = pow(2.0,32) 當我在一臺32位Windows7系統的計算機上運行此程序時,它將工作 但當我將其複製到具有64位系統windowsxp的計算機時,它會給我Q = 0 有什麼問題? Q很長intlong long int在windowsxp和windows7
回答
你如何知道那Q
是0?
如果你正在使用類似printf("%lld\n", Q);
打印出來,很可能你正在運行到Microsoft的C運行時庫的缺乏。微軟對C99的支持很少,很可能他們不支持"%lld"
格式(我驚訝他們的編譯器允許long long int
)。
嘗試除了比較Q
爲0,以打印的Q
值:
printf("Q = %lld\n", Q);
if (Q == 0) {
puts("Q == 0");
}
else {
puts("Q != 0");
}
,並諮詢Microsoft的文檔打印long long int
值的支持方式。
確定我會嘗試,當我來到包到實驗室2^N,感謝 –
我寫的printf( 「最大=%LLD」,LONG_LONG_MAX);在第一Windows7電腦 它會打印923 ......當我在WindowsXP編譯相同的程序它會給我-1,當我嘗試在我的筆記本電腦Windows7中其打印923 ......,所以我的事Windows中的問題類型 –
@MousaFarajallah:你在問'pow()'函數嗎,還是你在問'LONG_LONG_MAX'?你的問題沒有提到'LONG_LONG_MAX';如果你想問這個問題,請更新你的問題。無論哪種方式,請更新您的問題,向我們展示一個*完整* *可編譯*程序(包括'main()'函數和任何必需的'#include'指令),以說明您遇到的問題。它不應該超過六十多行。沒有這些,你迫使我們猜測你在做什麼。見http://sscce.org/ –
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
#include "highgui.h"
int main()
{
long long int Q;
Q=pow(2.0,32);
printf("%lld\n",Q);
printf("%lld\n",LONG_LONG_MAX); return 0;
}
- 1. unsigned long long int
- 2. unsigned long long VS unsigned long long int
- 3. Arduino long long int doc
- 4. long double vs long int
- 5. 從long long int中減去int int
- 6. std :: streampos,std :: streamoff和std :: streamsize long long int?
- 7. 從int轉換爲long long
- 8. 'intmax_t`應該在64位的`long int`和`long long int`平臺上做什麼?
- 9. DataColumn DataType int和long
- 10. 對int int long long的警告
- 11. long unsigned int和unsigned long int有什麼區別int
- 12. long long int和long double的區別是什麼?
- 13. 如何將long long int的數字放入long long int數組中
- 14. C++ int與long
- 15. %d與Long Int
- 16. 長長爲int和int爲long long轉換
- 17. 如何區分int和long?
- 18. unsigned int(32bit)爲無符號long long(64bit)
- 19. MSVC++處理無符號long long int
- 20. 將int轉換爲無符號long long
- 21. long int v。long的可讀性
- 22. 將字符串轉換爲long long int
- 23. 聯盟爲unsigned long long int類型投
- 24. 關於long long long long
- 25. 爲什麼使用int錯誤,但long long long
- 26. double to int(或long long long)轉換有時不好
- 27. 'long long int'被解釋爲'long int'。我該如何解決這個問題?
- 28. long long long bitwise operation error pic32
- 29. Robot.delay(int)與Thread.sleep(long)
- 30. assert equals int long float
你**重新編譯爲** 64位系統? – StoryTeller
Windows XP 64位非常*不常見。你確定這是你的? –
專業x64版從系統概要系統類型是x64的基PC –