c语言中“!a"是什么意思啊

 我来答
绯雨闲丸99
2011-05-02 · TA获得超过1761个赞
知道小有建树答主
回答量:296
采纳率:0%
帮助的人:385万
展开全部
!是“非”的意思,!a就是“非a”
c语言中,判断句中的判断结果,除了可以用true和false表示以外,还可以用数字表示,0表示“否”(false),0以外的所有数字表示“是”(true),所以,如果a是个整数,当a=0时,a是false,所以!a就是true;当a!=0时,a是true,所以!a就是false
方田555
2011-05-03 · TA获得超过1114个赞
知道小有建树答主
回答量:161
采纳率:0%
帮助的人:65.3万
展开全部
回答的好请采纳哦!!!

这是C语言中的“右移运算符”。一般情况下,他是按位操作。
特点:1.双目运算符,就像+、-、*、/一样,格式为(数1)>>(数2)
2.数1是被操作数,如被减数、被除数等;数2是右移位数。
3.优先级低,结合性:从左向右运算
如:8>>1=?表示将被移数向右移动1位

如何操作?
1.化十进制数为(注意了)对应的二进制数,对应指格式对应
2.通通右移,不足补0
3.化为十进制数
举例:short int a=8;a=a>>1;

1.a=0 000 1000
2.右移一位后:a= 0 000 100
3.补0:a=0 000 0100
4.化为十进制数:a=4

举例:int a=8;a=a>>1;
1.a=0 000 0000 0000 1000
2.右移一位后:a= 0 000 0000 0000 100
3.补0:a=0 000 0000 0000 0100
4.化为十进制数:a=4
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zcj5323
2011-05-02
知道答主
回答量:36
采纳率:0%
帮助的人:32.4万
展开全部
非a。 !(字符或数字)后的结果为0或者1, a在ascii码中的值不是0 那么!a就变成0了。
!0=1 !(任何非零输)=0。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
larrylxl
2011-05-02
知道答主
回答量:16
采纳率:0%
帮助的人:7.1万
展开全部
a的反。a=0,则!a不等于0,a不等于0,则!a等于0
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友7fa0bfff
2011-05-02 · TA获得超过219个赞
知道答主
回答量:141
采纳率:0%
帮助的人:58.7万
展开全部
非a 即a为0时 !a就为非0值
a不为0时 !a就为0
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式