Friday, 22 April 2016

How to find out which ANSI C standard my gcc works with by default?



I read here it is C90 with extensions. How can I know for sure?


Answer



Use the -std= flag to specify a language dialect: c89, c99, c++98, etc. Note that c90 is equivalent to c89.



As a shorthand -ansi causes -std=c89 in C mode and -std=c++98 in C++ mode.



Use -pedantic to enable all diagnostics that the standards require.




The defaults are gnu89 for C and gnu++98 for C++. Consult the manual for detailed descriptions of the various dialects.


No comments:

Post a Comment

c++ - Does curly brackets matter for empty constructor?

Those brackets declare an empty, inline constructor. In that case, with them, the constructor does exist, it merely does nothing more than t...