簡體   English   中英

用C ++打印結構

[英]printing structs in C++

我正在嘗試從結構中打印3個屬性。 他們為什么都不打印? 它們將一次打印2張,但不會同時打印三張。

name的末尾有回車符。 所以是印刷

2HP Potion\r10

\\r將光標移動到該行的開頭,而不移動到下一行,因此10覆蓋2H

我懷疑這是因為您從Windows上編寫的文件中讀取了名稱,該文件在文本文件中使用\\r\\n作為其換行順序。 您應該使用dos2unix修復文件,或者更改讀取文件的代碼以刪除\\r字符。

您可以使用以下命令刪除\\r

int last_pos = name.size()-1;
if (last_pos >= 0 && name[last_pos] == '\r') {
    name.pop_back();
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM