C99相对于c89的一些变化

最近开始学习C语言,买了本传说中的经典书籍《C语言程序设计》,这本书虽然不厚,但是还是有些难度的,幸好自己还有些编程基础,要不然还真看不懂。

这本书虽然已经是第二版,但是还是采用的c89标准编写的。现在已经是2016年了,不管怎么说,也有必要了解下C99到底有些什么变化的。目前,在windows平台下,能支持c99标准的编辑器而且又好用的,其实并不多。用过一段时间的Cfree,偶尔会出现一些莫名的bug,最后还是觉得dev c++相对来说,靠谱一些。

具体来说,C99标准的文件非常复杂,内容很多,下面挑一些比较常用的变化:

1.单行注释。引入了单行注释标记 "//" , 可以象C++一样使用这种注释了。

2._Bool。值是0或1。C99中增加了用来定义bool、true以及false宏的头文件夹<stdbool.h>,以便程序员能够编写同时兼容于C与C++的应用程序。在编写新的应用程序时,应该使用 <stdbool.h>头文件中的bool宏。

3.for语句内的变量声明。

C99中,程序员可以在for语句的初始化部分定义一个或多个变量,这些变量的作用域仅于本for语句所控制的循环体内。比如:

代码:

for(int i=0; i<10; i++){     // do someting ... }

4.混合声明(mix declarations and code)

其实也就是解除了原先必须在block的第一条语句之前声明变量的限制:现在C99也和C++一样,可以在代码中随时声明变量了。


 

 

 

你可能感兴趣的:(C99相对于c89的一些变化)