[英]How to determine which command line options gcc passes to ld by default?
[英]Is there a command line involving gcc to know which --std=xxx it is using?
我可以選擇打電話
gcc --std=c99 toto.c -o toto.elf
但就我而言,我想知道調用時默認使用哪個 --std
gcc toto.c -o toto.elf
關閉請求的注意事項:我駁斥了這個主題是重復的想法,事實上,我想要的不僅是知道默認的 --std 是什么,而且知道 --std 當前使用的是什么以及 std=gnu11 之間的區別和標准= c11。 當然,我的第一篇文章是在誤導人們。
我發現這個gcc -dM -E - < /dev/null | grep 'STDC_VERSION'
gcc -dM -E - < /dev/null | grep 'STDC_VERSION'
-std=gnu90
。-std=gnu11
。-std=gnu17
。 所以你只需要檢查--version
。 然而, __STDC_VERSION__
也應該與-std=cxx
相對應,即使在使用 GNU 擴展進行編譯時也是如此。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.