c中bool的用法
cc中bool的用法的用法你知道吗?下面小编就跟你们详细介绍下cc中bool的用法的用法,希望对你们有用。
cc中bool的用法的用法如下:
我们知道在C++里有专门的bool类型,用来表示真或假。但是在C语言里没有这样的类型(至少我是一直这么认为的),表达式的值0为假,非0为真。所以条件判断语句( if(...)、while(...) )非常灵活,甚至一个指针类型都可以是条件表达式。
为了使程序更清晰,我们常常会给出如下的宏定义:
typedef int BOOL;
#define TRUE 1
#define FALSE 0
这是最常见的写法,能被任何C语言编译器认可。
今天我在一段程序里看见这么一行 #include <stdbool.h>,这个陌生的头文件还以std打头而且还和bool有关,引起了我的警觉,立刻百度之。得知这是C99标准新增的头文件,意在引入bool类型,使之和C++兼容。随后我看了一下这个头文件的源代码,内容如下:
/*
* ISO C Standard: 7.16 Boolean type and values <stdbool.h>
*/
#ifndef _STDBOOL_H
#define _STDBOOL_H
#ifndef __cplusplus
#define bool _Bool
#define true 1
#define false 0
#else /* __cplusplus */
/* Supporting <stdbool.h> in C++ is a GCC extension. */
#define _Bool bool
#define bool bool
#define false false
#define true true
#endif /* __cplusplus */
/* Signal that all the definitions are present. */
#define __bool_true_false_are_defined 1
#endif /* stdbool.h */
这个头文件很短,而且也很明了,不过我对_Bool这个类型产生的兴趣。又一翻百度,发现这是C99标准引入的新的关键字。对,是关键字,而不是宏定义,也不是typedef。通过sizeof(_Bool);得知这个类型占1个字节,而且无论给这个类型的变量赋任何非0整数值,其值都是1,这也说明了他不是其他整数类型的别名。
好了,其实说白了,C语言不是没有布尔类型,只能说在C99标准之前没有。现在只要在源文件中包含stdbool.h这个头文件,就可以在C语言里像C++那样使用bool类型了。
-
计算机光驱和打印机常见词汇
小编为大家整理了计算机光驱和打印机常见词汇,希望对你有帮助哦!计算机光驱和打印机常见词汇:光驱ATAPI(ATAttachmentPacketInterface)BCF(BootCatalogFile,启动目录文件)BIF(BootImageFile,启动映像文件)CDR(CDRecordable,可记录光盘)CD-ROM/XA(CD-ROMeXtendedArch...
-
计算机与通信专业英语
下面是本站小编整理的计算机与通信专业英语,希望对大家有帮助。基本信息出版社:北京邮电大学出版社;第1版(2005年12月1日)外文书名:EnglishforComputersandTelecommunications平装:323页语种:简体中文,英语开本:16ISBN:9787563511426条形码:9787563511426商品尺...
-
计算机应用英语
小编为大家整理了计算机应用英语。希望对你有帮助哦!一、基本信息编者:饶文涛市场价:¥11.80卓越价:¥10.10出版社:华中科技大学出版社页码:149页出版日期:2001年ISBN:7560923739条形码:9787560923734版本:1版装帧:平装开本:16英语:英语丛书名:高职、高专计算机系列...
-
计算机常见英语词汇解释
电脑,又称计算机,是机械的一种,现在使用的越来越多。接下来小编为大家整理了计算机常见英语词汇解释,希望对你有帮助哦!计算机常见英语词汇解释一:accessarm磁头臂,存取臂accesstime存取时间adder加法器address地址alphanumeric字母数字的analogcomputer模拟计算机an...