配列内の一致する文字列を検索するために小さなスニペットを書いた後、並列配列の結果をきれいにフォーマットされた方法で出力します。しかし、文字列出力の仕組みに関する基本的な誤解があります。なぜなら、私の人生にとって、タブ、改行、またはコード内にendl
を使用するかどうかに関係なく、正しく出力することができないからです。coutステートメントの不思議な改行
for (int i = 0; i < arrayCount; i++) {
if (arrayCopy[i].find(localString) != string::npos) {
cout << "\n\t"
<< array1[i] << " {"
<< subArray1[i] << ", "
<< subArray2[i] << "}";
}
}
私は結果が各行の先頭にタブを持つように期待してい::どこ
MatchedString1 {Data, MoreData} MatchedString2 {Data, MoreData} MatchedString3 {Data, MoreData}
は、代わりに私は、以下のような結果を取得しています。ここ
は、以下の関連するコードですタブは(最初の結果を除く)空白行に表示されます:
MatchedString1 {Data, MoreData} MatchedString2 {Data, MoreData} MatchedString3 {Data, MoreData}
Cに存在する悪魔のようなどのような癖++それは私にそんなに痛みを引き起こしているのですか?
試みがあなたのブツの末尾に '<< endl'を追加し、「\ n」は、私が試した –
@hexa'の末尾に<< endl'を取り除きます最初は、「cout」、それはまったくなく...何も動作していないようです! – Moses
ターミナル/コマンドラインウィンドウに出力して、これを表示していますか?もしそうなら、どちらの端末プログラムを使用していますか?ファイルにリダイレクトしてそのファイルを開くとどうなりますか? – Jacob