当前位置:网站首页 > 技术博客 > 正文

c语言里面的数据类型



关于如何在 C 语言中使用布尔(bool)类型

在 C 语言中,布尔类型不是 C 语言的内置数据类型,C 语言默认将 0 设为 false,将 1 设为 true。但从 C99 开始,添加了 _Bool 类型并引入标准库文件 stdbool.h,从而使得 bool 数据类型能直接应用到 C语言代码中。

stdbool.h实际上只有几行代码:

#ifndef _STDBOOL #define _STDBOOL #define __bool_true_false_are_defined 1 #ifndef __cplusplus #define bool _Bool #define false 0 #define true 1 #endif // __cplusplus #endif // _STDBOOL

它的作用就是:

  • 定义 __bool_true_false_are_defined 为 1
  • 将 bool 定义为 C99 内置类型 _Bool
  • 将 true 和 false 分别定义为 1 和 0
  • 对于 _Bool 类型,可以对其任意赋值,任何对其非 0 的赋值在调用此变量时都会返回 1

以下为使用 stdbool.h 的代码示例:

#include <stdbool.h> #include <stdio.h> int main() { printf("true = %d ", true); printf("false = %d ", false); bool a = 0; bool b = 'b'; bool c = "Hello world"; printf("bool a = %d ", a); printf("bool b = %d ", b); printf("bool c = %d ", c); return 0; }

运行结果:

true = 1 false = 0 bool a = 0 bool b = 1 bool c = 1

  • 上一篇: es6 新增的特性
  • 下一篇: clr 错误
  • 版权声明


    相关文章:

  • es6 新增的特性2025-01-19 10:30:03
  • 系统管理2025-01-19 10:30:03
  • oracle 视图 rowid2025-01-19 10:30:03
  • 线程间通信机制2025-01-19 10:30:03
  • map键值对可以为null2025-01-19 10:30:03
  • clr 错误2025-01-19 10:30:03
  • 双硬盘分别安装ubuntu和win102025-01-19 10:30:03
  • 0-1背包问题动态规划算法思想2025-01-19 10:30:03
  • fstab uuid挂载2025-01-19 10:30:03
  • 异或运算公式用法2025-01-19 10:30:03