猿问

C++中为什么if(a)与if(a!=0)等价?

C++中为什么if(a)与if(a!=0)等价?


PIPIONE
浏览 709回答 3
3回答

叮当猫咪

if(a)是指如果a不是0,就执行if后面的语句;if(a!=0)是完整写出了if(a)的形式,同样是指如果a不是0,就执行if后面的语句。

喵喔喔

C 语言中认为,“非”“零”就是“一”:“非”对应“0”,“是”对应“非0的任何值”所以,就非常明确if(a!=0): --- A如果非0,即 如果A存在;if(a) --- 把A看成是一个判断条“是”或者“非”那么就是“非0"或者"0"也就是"a!=0"或者"a==0"了

MYYA

在C++中 true=1 false=0if(condition)语句中condition 是一个bool的,if(a)如果a==0相当于if(false),如果a!=0相当于if(!false)
随时随地看视频慕课网APP
我要回答