c语言

C语言布尔值与整型怎么转换

小樊
341
2024-06-20 01:50:22
栏目: 编程语言

在C语言中,布尔值和整型之间的转换可以通过以下方式进行:

  1. 布尔值转换为整型: 布尔值转换为整型时,true会被转换为1,false会被转换为0。
bool b = true;
int i = (int)b;
printf("%d\n", i); // 输出1

b = false;
i = (int)b;
printf("%d\n", i); // 输出0
  1. 整型转换为布尔值: 整型转换为布尔值时,非零的整数会被转换为true,0会被转换为false。
int i = 5;
bool b = (bool)i;
printf("%d\n", b); // 输出1

i = 0;
b = (bool)i;
printf("%d\n", b); // 输出0

需要注意的是,在C语言中,布尔值的大小通常为1个字节,而整型的大小通常为4个字节(int型),因此在转换时可能会发生数据截断或数据溢出的情况,需要注意数据的范围。

0
看了该问题的人还看了