c语言程序设计,if(flag)中,括号内只有一个flag,表示什么?诸如此类,怎么解释

2024-10-29 11:44:52
推荐回答(3个)
回答(1):

C语言中有个很奇怪的规定, 只要一个值不是0, 他就相当于真, 0就是假
你那个flag是个int, 所以
if(flag) 就相当于 if(flag!=0)
当且仅当flag==0的时候, if条件失败, 否则都视为成功
不推荐这么写, 这个写法很不好

回答(2):

if(flag)是if判断啊,如果flag是bool型,可以理解成如果flag为真,则执行if条件下的语句。如果flag是整型变量,则flag为非0的时候执行if条件下的语句。

回答(3):

括号里面的值为0时不执行,为1时执行