C语言中的Bool类型
2015-03-17 15:19
183 查看
博客搬家了,最近同时更新,没准什么时候就完全搬走了-_-
http://blog.just666.cn 这个是新博客地址,希望大家多多关照
最近在网上看到有一些说法说C语言里是没有bool类型的,但是我记得有一本书(《C Primer Plus》)里有过关于C语言bool类型的介绍,所以就翻了翻书,确定了C语言里的bool类型的确存在。下面介绍一下C语言中的bool类型。
C语言是用C99标准开始添加了bool类型。bool类型是以英国数学家George Boole的名字命名的,他开发了用代数表示并解决逻辑问题的系统。在C语言中我们用_Bool来定义bool类型的变量。
上面就定义了一个名为test的_Bool类型变量,并且把(1 == 3)这个表达式的值赋值给test。_Bool类型的值只有0和1。在C语言中,任何非0的值都为真,这一点我们可以通过如下代码判断。
上面这段代码最后结果就只有i为1的0的时候,赋值给test,test才表达为真。
最后我们来看一下C语言中的_Bool类型是不是真的也只占用一个二进制位的内存空间。
http://blog.just666.cn 这个是新博客地址,希望大家多多关照
最近在网上看到有一些说法说C语言里是没有bool类型的,但是我记得有一本书(《C Primer Plus》)里有过关于C语言bool类型的介绍,所以就翻了翻书,确定了C语言里的bool类型的确存在。下面介绍一下C语言中的bool类型。
C语言是用C99标准开始添加了bool类型。bool类型是以英国数学家George Boole的名字命名的,他开发了用代数表示并解决逻辑问题的系统。在C语言中我们用_Bool来定义bool类型的变量。
#include <stdio.h> int main () { _Bool test; test = (1 == 3); return 0; }
上面就定义了一个名为test的_Bool类型变量,并且把(1 == 3)这个表达式的值赋值给test。_Bool类型的值只有0和1。在C语言中,任何非0的值都为真,这一点我们可以通过如下代码判断。
#include <stdio.h> int main () { _Bool test; int i; for (i = -10; i< 10; i++) { test = i; if (test) printf ("true\n"); else printf ("false\n"); } return 0; }
上面这段代码最后结果就只有i为1的0的时候,赋值给test,test才表达为真。
最后我们来看一下C语言中的_Bool类型是不是真的也只占用一个二进制位的内存空间。
#include <stdio.h> #include <stdlib.h> int main () { int myint; _Bool mybool; int memint; int membool; memint = sizeof(myint); membool = sizeof(mybool); printf ("int = %d\n", memint); printf ("_Bool = %d\n", membool); return 0; }
相关文章推荐
- 用C语言定义Bool类型(包括数据表示和操作实现),至 少包含and(与)、or(或)、not(非)、equiv(相等)这4个操作。
- C语言中有bool类型吗?
- C语言中有没有bool类型?
- C语言中有bool类型吗?
- C语言没有bool类型, C99标准stdbool.h定义了一个_Bool的宏
- C语言有bool类型吗
- 说说C语言与C++的有些区别(一)----为什么C语言没有BOOL类型,而C++有;枚举类型的区别;左值
- C语言中的布尔(bool)类型
- C语言中有bool类型吗?
- C++ c++与C语言的区别(struct类型的加强,函数-变量类型加强,bool类型)
- c语言里面竟然没有bool类型
- C语言中没有定义bool类型
- C语言中的bool类型
- C语言中的bool类型
- c语言中有自己的bool类型
- C语言中实用BOOL类型
- C语言中有没有bool类型?
- C语言中有没有bool类型?
- C语言中实现BOOL类型
- 一起talk C栗子吧(第一百六十八回:C语言实例--C语言中的布尔--bool类型)