C/C++ 标准笔记

在编译(make) C/C++程序的时候,往往会看到这样的话: “根据C99标准 ……bulabula”, 以前一直忽略这个东西,也没有花心思去弄明白到底这些个标准是什么意思,现在就在整理一下:

首先可以看Wiki的解释:  http://en.wikipedia.org/wiki/ANSI_C

然后大概明白了什么意思,然后试着这么理解一下:语言一定是要在某种标准下的,比如在不同的标准下,printf就不一定会支持%zu这样的格式(见《从一个用printf输出size_t类型数据的warning想到》),真正理解了以后,其实不用深究什么时候用什么标准,遇到具体情况到时候再查好了,最后提一句,现在的编译器比如gcc或者g++中有相关的option 可供选择标准或者选择turn on 或者 turn off某些标准的feature 比如如-ansi选项。

Written on January 5, 2013