bool取值false和true,是0和1的区别,,false可以代表0,但true有很多种.并非只有1。bool是在C++中的定义类型,我们如何在C中实现bool型的数据呢?
我们可以利用枚举型的定义来实现,枚举型是定义常量的一种方式,默认从0一次递增,也可以自行定义,未定义的部分递增。
- #include <stdio.h>
- #include <stdlib.h>
- typedef enum {false = 0, true = 1} bool;//利用枚举类型定义bool
- int main()
- {
- int k=0x0001;
- bool i;
- i=(bool)k;//转换为bool即取最后一位
- printf("%d",i);
- while(1);
- return 0;
- }