A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 墨子 中级黑马   /  2014-4-30 14:27  /  2255 人查看  /  6 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

看不懂这句语句while(!x),有人能详细的解释下吗

评分

参与人数 1技术分 +1 收起 理由
脸皮猴 + 1

查看全部评分

6 个回复

倒序浏览
while(!x);这个主要是看x的值, !是逻辑非的意思;当 x == 0 时 !x = 1,while条件才成立;当x 是所有非0的任意数的时候,!x = 0,while条件不成立

评分

参与人数 1技术分 +1 收起 理由
脸皮猴 + 1

查看全部评分

回复 使用道具 举报
这句话等价于  while(x==0)
回复 使用道具 举报
c语言中只有0为假,非零为真
while(!x)这句话:当x=0时,!x为真,执行循环体,当x为其他值时,!x为假,循环体不执行;
恰好和while(x==0)等价:x=0执行循环体,非零不执行
回复 使用道具 举报
x作为变量,肯定是有值的,只要x的值非0,就进不了循环
回复 使用道具 举报
当X=0的时候执行循环
回复 使用道具 举报
就是个!,就是个非,x为真,!x既为假。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马