C++中if为什么能这么用?有什么用?

if (x[d] / x[b] / x[c] && x[d] % (x[b] * x[c]) == 0)

1.
C++中 这个 if 为什么能这么用?

2.这样用会导致什么结果?

if是判断,有些时候一个任务需要触法条件,比如需要在变量a=0时弹出弹窗,就需要用if

C++里,数字表达式,== 0为false,!=0为true
因此
x[d] / x[b] / x[c]
就是
x[d] / x[b] / x[c] != 0
的意思

另外多说两句
0 NULL false '\0' FALSE 这些都是0/false
非0的一切都是true

if(a)就等于if(a!=0)
所以if (x[d] / x[b] / x[c] && x[d] % (x[b] * x[c]) == 0)就等同于
x[d/x[b]/x[c]!=0 且 x[d] % (x[b] * x[c]) == 0

if (x[d] / x[b] / x[c] && x[d] % (x[b] * x[c]) == 0)  == if ((x[d] / x[b] / x[c])  && (x[d] % (x[b] * x[c]) == 0)) == if (((x[d] / x[b] / x[c]) != 0)  && (x[d] % (x[b] * x[c]) == 0))