C语言布尔类型详解
2024-01-07 17:58:42
在C语言中,布尔类型代表逻辑值true
和false
。在早期C语言标准中(C89),并没有专门为布尔值设立独立的类型。通常,使用整数0
表示false
,而所有非零的值表示true
。
1. 使用整数表示布尔值
int main(){
int handsome = 1;
if (handsome) {
printf("好帅!\n");
}
return 0;
}
以上做法不够直观,可以通过宏定义让代码更易读。
2. 使用宏定义定义布尔类型
#define BOOL int // 或者使用 typedef int BOOL; 替代
#define TRUE 1
#define FALSE 0
int main(){
BOOL handsome = TRUE;
if(handsome){
printf("好帅~");
}
return 0;
}
3. C99引入的_Bool类型
C99标准引入了_Bool
类型,表示布尔值,即逻辑值true
和false
。然而,该类型的值实际上是整数类型的别名,仍然使用0
表示false
,1
表示true
,其他非零值都会被存储为1
。因此,_Bool
类型本质上也是一种整数类型。
#include <stdio.h>
int main() {
_Bool isFlag = 1;
if (isFlag)
printf("你好~~\n");
return 0;
}
4. 使用stdbool.h头文件
C99还提供了stdbool.h
头文件,其中定义了bool
代表_Bool
,并规定了true
代表1
、false
代表0
。只需包含该头文件,即可使用bool
定义布尔值类型,以及false
和true
表示真假。
#include <stdio.h>
#include <stdbool.h>
int main() {
bool isFlag = true;
if (isFlag)
printf("你好~~\n");
return 0;
}
文章来源:https://blog.csdn.net/qq_29752857/article/details/135428315
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!