按照上面的代碼如果我輸入:Hello World Here I Come我理解的是輸出:Hello World Here I Come 為什么運(yùn)行的時(shí)候輸出的是Hello World
1 回答

慕斯王
TA貢獻(xiàn)1864條經(jīng)驗(yàn) 獲得超2個(gè)贊
你好,關(guān)鍵的地方在于:
for(int i = 0; i < q.size(); i++) { cout << q.front(); q.pop(); }
你使用了for循環(huán)進(jìn)行輸出,但是要知道,你在for循環(huán)里q.pop() 之后q.size()就少一位了呀,所以for循環(huán)執(zhí)行的次數(shù)根本沒有25次,當(dāng)執(zhí)行到World的最后一個(gè)單詞d的時(shí)候,i已經(jīng)和q.size()一樣大了。
輸出隊(duì)列的方法應(yīng)該是while循環(huán):
while(q.size()>0) { cout<<q.front(); q.pop(); }
- 1 回答
- 0 關(guān)注
- 803 瀏覽
添加回答
舉報(bào)
0/150
提交
取消