GCC對C標准的支持



寫在前面:GCC支持C90, 不完全支持C99。在不指定C標准的情況下,GCC默認使用GNU C。用一個式子表示GNU C:

GNU C = C90 + GNU Extensions = C90 + (some features in C99 + some features in C11)


GCC(GNU Compiler Collection,GNU編譯器套裝),是一套由GNU開發的編程語言編譯器。原名為GNU C語言編譯器(GNU C Compiler),因為它原本只能處理C語言。GCC很快地擴展,變得可處理C++。之后也變得可處理Fortran、Pascal、Objective-C、Java、Ada,以及Go與其他語言。

如下表,GCC至今(version 4.7)已支持4種C標准。注意有些標准是不完全支持的。

參考:Language Standards Supported by GCC

另外,GCC也提供了擴展的C標准(GNU C)。

參考:Extensions to the C Language Family

默認情況下,即在不加以上講到的編譯器選項的情況下,GCC使用-std=gnu89(版本高的話,可能是-std=gnu90)。


看個例子

ps: 我用的是wingw, gcc version 4.3.3


結束語:gcc對C語言的新標准(如C99,C11)還是不遺余力地支持的,不像MS。 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM