今天在linux下編了一個C程序,用到了bool類型,在編譯的程序的時候出現以下錯誤:
//error: expected '=', ',', ';', 'asm' or '__attribute__'
查找了半天,發現要包含stdbool.h頭文件,原因如下:
在C99中,可以直接使用_Bool表示布爾類型(而我使用的是bool),但不可以直接使用false和true,要自己定義,例如:
#define true 1
#define false 0
在定義了true和false之後才可以直接使用。
頭文件stdbool.h中,對布爾類型進行了擴展,增加了關鍵字bool,而且定義了false和true的宏,所以包含了stdbool.h頭文件便可以直接使用bool了。
將C語言梳理一下,分布在以下10個章節中:
- Linux-C成長之路(一):Linux下C編程概要 http://www.linuxidc.com/Linux/2014-05/101242.htm
- Linux-C成長之路(二):基本數據類型 http://www.linuxidc.com/Linux/2014-05/101242p2.htm
- Linux-C成長之路(三):基本IO函數操作 http://www.linuxidc.com/Linux/2014-05/101242p3.htm
- Linux-C成長之路(四):運算符 http://www.linuxidc.com/Linux/2014-05/101242p4.htm
- Linux-C成長之路(五):控制流 http://www.linuxidc.com/Linux/2014-05/101242p5.htm
- Linux-C成長之路(六):函數要義 http://www.linuxidc.com/Linux/2014-05/101242p6.htm
- Linux-C成長之路(七):數組與指針 http://www.linuxidc.com/Linux/2014-05/101242p7.htm
- Linux-C成長之路(八):存儲類,動態內存 http://www.linuxidc.com/Linux/2014-05/101242p8.htm
- Linux-C成長之路(九):復合數據類型 http://www.linuxidc.com/Linux/2014-05/101242p9.htm
- Linux-C成長之路(十):其他高級議題
C++ Primer Plus 第6版 中文版 清晰有書簽PDF+源代碼 http://www.linuxidc.com/Linux/2014-05/101227.htm