()括号算运算符?//怎么知道x=1还是0呢???
#include "stdafx.h"
int _tmain(int argc, _TCHAR* argv[])
{
int j = 1;
int x;
int r;
printf("%d\n",(j?x=1:x=0)?r=1:r=0);
return 0;
}
[解决办法]
先不说C语言里的运算符优先级,你数学式子里的()总该知道是什么意思吧,这里也一样,比其他语句都要优先执。
j?x=1:x=0是一句三目运算符,换成if语句就是
if(j)
x=1;
else
x=0;