嘗試使用%zu轉換說明符以十進制形式輸出指針地址。按預期運行,但gcc警告格式'%zu'期望類型'size_t',但參數4的類型爲'long int *'。在問題中顯示使用的gcc選項。 gcc仍然警告沒有任何選項設置(除了-std = c99)。然而,鏗鏘聲根本不會發出任何警告,並且具有相同的選項。這是在OS X 10.7上。只是好奇鏗鏘爲什麼不發出任何警告?調試/編譯gcc比clang更「好」嗎?gcc -W -Wall -O -pedantic -std = c99 vs clang具有相同選項
0
A
回答
2
這似乎是特定於鐺的z
大小改性劑;你做獲得與%lu
,%u
,%hu
等的警告(即使沒有任何選項)
一般來說,它一直是我的經驗,鐺比GCC做更多有用的警告消息。這是該經歷的一個例外。我會提交一個錯誤。
0
相關問題
- 1. 編譯-ansi -pedantic -Wall用gcc
- 2. 警告:使用gcc -std = C89 -g -pedantic FILENAME.C
- 3. 爲什麼使用gcc和std = c99編譯時找不到getaddrinfo
- 4. gcc vs. clang:符號剝離
- 5. 使用-std = c99進行編譯時,是否需要使用-pedantic或-ansi?
- 6. GCC無效的命令行選項
- 7. gcc std = gnu ++ 0x選項
- 8. 我使用-std時= C99
- 9. GCC編譯失敗,並行線程和選項性病= C99
- 10. gcc和clang不同意constexpr函數
- 11. NDK12b:使用獨立工具鏈和相同的構建腳本,使用clang vs gcc生成的不同ELF
- 12. GCC(/ Clang):使用相同指令合併函數(COMDAT摺疊)
- 13. gcc中的-o選項是什麼?
- 14. GCC的行爲與std :: async(std :: launch :: async)與Clang的行爲
- 15. 嚴格C90代碼的GCC選項?
- 16. 當-std = c99被設置時,爲什麼gcc不能找到random()接口?
- 17. Clang,GCC接受的相同功能的不同原型
- 18. Android Studio NDK構建忍者gcc/clang命令行選項
- 19. gcc的警告當方言C99或C11使用
- 20. 具有相同選項的PHP不同選擇框
- 21. 具有多個條目具有相同值的JQuery select選項
- 22. 在C99中用不同索引優化'for-loops'陣列
- 23. 選擇具有相同值
- 24. struct in6_addr在gcc上崩潰c99
- 25. 取決於優化選項的不同行爲
- 26. MS VS 2008和C99
- 27. 能否將GCC中的std = c99設置爲默認值?
- 28. g ++的含義flags -Wall -W -Werror
- 29. 函數調用中表現不同類VS W/O在python3類
- 30. `-pedantic`生成的編譯器警告是什麼意思?
我不認爲標準要求printf格式的警告。這不是一個類型安全的功能,所以最終的負擔是*你*使用它的權利。 –
這是有道理的... – spinozagl
我想你知道正確的格式說明符是'%p',即使這樣一個強制類型轉換爲'void *'。 –