为什么这样一句话:关于?和:在C++
int a = 7, b = 8, c = 0;
c = b>a?a>b?a++:b++:a++?b++:a--;
cout << c;
不等于:
int a = 7, b = 8, c = 0;
c = (b>a?(a>b?a++:b++):a++)?b++:a--;
cout << c;
,等于:
int a = 7, b = 8, c = 0;
c = b>a?(a>b?a++:b++):(a++?b++:a--);
cout << c;
请给我一些原因。为什么?
http://www.cppreference.com/wiki/operator_precedence – phimuemue 2010-05-09 11:52:44
耶稣基督,为什么你曾经想要写这样的代码?! – Skilldrick 2010-05-09 11:52:59
你应该很好地用括号写代码,除非你知道优先级 – Zai 2010-05-09 12:08:30