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

 我来答
远宏018
高粉答主

2020-07-08 · 繁杂信息太多,你要学会辨别
知道小有建树答主
回答量:2642
采纳率:100%
帮助的人:45.3万
展开全部

不是。

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

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

扩展资料:

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;

风若远去何人留
2018-02-01 · 知道合伙人互联网行家
风若远去何人留
知道合伙人互联网行家
采纳数:20412 获赞数:450131
专业C/C++软件开发

向TA提问 私信TA
展开全部
!0规定结果为1.
所以 !0 == 1 成立
!0 == 0x10 不成立
每个值都是有固定的结果的, 不可能和任意值相等。
虽然!任意非0值结果为0, 但反之是不成立的。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
imkarayi9d4f
2018-01-31 · TA获得超过1552个赞
知道小有建树答主
回答量:1164
采纳率:85%
帮助的人:603万
展开全部
!(0)是表示非零。
只要不是零值,都可以。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
听不清啊
高粉答主

2018-01-30 · 说的都是干货,快来关注
知道顶级答主
回答量:7.8万
采纳率:89%
帮助的人:1.9亿
展开全部
!(0)的值==0x1
追问
!0的值可以为任何不为0的值吗
追答
!(非0的值)=0
!0=1
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式