您的位置首页生活百科

C语言中!(0)的值==0x10吗

C语言中!(0)的值==0x10吗

的有关信息介绍如下:

不是。

!(0)规定结果为1。所以 !(0) == 1 成立!(0 )== 0x10 不成立每个值都是有固定的结果的, 不可能和任意值相等。虽然!任意非0值结果为0, 但反之是不成立的。

!0代表为真;一般在循环语句中表示执行循环。

C语言中!(0)的值==0x10吗

扩展资料:

C99提供了_Bool 型,所以布尔类型可以声明为 _Bool flag。

_Bool依然仍是整数类型,但与一般整型不同的是,_Bool变量只能赋值为0或1,非0的值都会被存储为1。

C99还提供了一个头文件 <stdbool.h> 定义了bool代表_Bool,true代表1,false代表0。只要导入 stdbool.h ,就能非常方便的操作布尔类型了。

举例:

#include <stdbool.h>

#include <stdio.h>

//计算n!,n的值在main中定义

int main(void){

int n = 10;    //计算叠乘数

int sum = 1; //用来存放叠乘的结果

bool flag = false;    //叠乘标记

int num = n;    //循环次数

while( !flag ){

sum = sum * (num--);

//当num=1时结束循环

if( num == 1){

flag = true;

printf ("%d的叠乘值为 %d \n", n, sum);

return 0;