中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

關于y=(++i)+(++i)+(++i)的問題

發布時間:2020-07-07 18:15:55 來源:網絡 閱讀:731 作者:萌谷王 欄目:編程語言

#include<iostream>

using namespace std;

 

int main()

{

int i=2,y;

y=(++i)+(++i)+(++i);

return 1;

}

 

此程序運行完畢之后,y的值是13.

但是粗略一看應該是12才對啊!

但是這是一個很有趣的問題:

它與表達式求值密切關系,

表達式求值,C++里面是從左到右的求值方式,而+法運算又是左結合的

這樣, 你可以認為是 y = ((++x)+(++x)) + (++x);
于是,做最優先的加法之前,先要把兩個操作數計算出來,
于是首先計算左操作數    ((++x)+(++x)) ,這個又是一個子表達式

先計算子表達式的左操作數=(++x) = 3 

再計算子表達式的右操作數=(++x)=4

左操作數計算出來 = 4+4 = 8

然后,再計算最優先的加法的右操作數 =  ++x = 5

最后,y= 8 + 5 = 13

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

++i
AI

博乐市| 井陉县| 土默特左旗| 巴林左旗| 内江市| 广河县| 曲靖市| 上思县| 淮安市| 微博| 平果县| 辉南县| 富源县| 阜城县| 西华县| 赫章县| 永清县| 金阳县| 安西县| 本溪| 四平市| 沧州市| 芦溪县| 夏邑县| 河池市| 天等县| 太保市| 巴林右旗| 阿尔山市| 怀仁县| 万荣县| 固原市| 会东县| 芦溪县| 芷江| 泸溪县| 光泽县| 库车县| 鄢陵县| 勐海县| 静乐县|