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

慕斯王
TA貢獻(xiàn)1864條經(jīng)驗 獲得超2個贊
你好,關(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的最后一個單詞d的時候,i已經(jīng)和q.size()一樣大了。
輸出隊列的方法應(yīng)該是while循環(huán):
while(q.size()>0) { cout<<q.front(); q.pop(); }
- 1 回答
- 0 關(guān)注
- 811 瀏覽
添加回答
舉報
0/150
提交
取消