1

文字の配列があるとしますchar str[10]

xyz\nabcstr使用して保存するchar str[10]="xyz\nabc";と、次の出力が得られます。

xyz
abc

一方、stdinフォームから入力してからxyz\nabc印刷すると、次の出力が得られます。

 xyz\nabc

なぜそうなのですか?

4

1 に答える 1

7

から読み取ると、表示stdinどおりの文字列が正確に得られ"xyz\nabc"ます。

その値をコードにハードコードすると (例: char* x = "xyz\nabc")、\nは 1 文字になり、改行を表します。同じ出力を得るには、必要がありますchar* x = "xyz\\nabc"- エクストラは . を\エスケープし\ます。

これを参照してください http://en.cppreference.com/w/cpp/language/escape

于 2012-06-14T13:25:28.943 に答える