- 論壇徽章:
- 0
|
int i=8;
printf("%d\n",-++i);
結(jié)果為-9
int i=8;
printf("%d\n",-i++);
結(jié)果為-8
我是這么想的
①先執(zhí)行++ 則i=9 再執(zhí)行 - 結(jié)果為-9
②先執(zhí)行 - 則i=-8 再執(zhí)行++ 則i=9 但不輸出
但是我不會(huì)用運(yùn)算符的優(yōu)先級(jí)和結(jié)合性解釋 優(yōu)先級(jí) - 和++ 都相同 不知道先執(zhí)行那個(gè)(然后我就覺得可以用結(jié)合性來想:他們都是右結(jié)合性 那就應(yīng)該限執(zhí)行靠左的 再執(zhí)行不怎么靠左的 可這樣的話①就先執(zhí)行++i 那就應(yīng)該 加1后直接輸出 所以就暈了 求解)
還有關(guān)于右結(jié)合性先執(zhí)行靠左的 我是自己寫程序試驗(yàn)出來的 不知道對(duì)不 求驗(yàn)證 ( o(︶︿︶)o 唉 書上說 右結(jié)合性就是從右到左 所以我很不確定自己實(shí)驗(yàn)得出的對(duì)不) |
|