• ベストアンサー

C++について質問です。初心者です。

#include <iostream> using namespace std; //#壁 _空間 .ゴール oブロック p人 const char gStageData[] = "\ ########\n\ # .. p #\n\ # oo #\n\ # #\n\ ########"; const int gStageWidth = 8; const int gStageHeight = 5; このプログラムにおいて、const char gStageData[]="\の部分の \の意味は何になるのでしょうか??改行は、/nだし、分からなかったので分かる方回答よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • f272
  • ベストアンサー率46% (8469/18132)
回答No.2

「\」の次の文字をエスケープします。「\」の次の文字は改行文字になっていますから,それをエスケープすると改行していないことになり,gStageDataを文字列として1行に書いたことと同じ意味になります。 2つの物理行ではあるが,1つの論理行と解釈させるために,このような書き方をしています。 結果として const char gStageData[] = "########\n# .. p #\n# oo #\n# #\n########"; と同じことになります。でもこれだとわかりにくいでしょ。

sera_jp
質問者

お礼

なるほどー、理解できましたー。解答ありがとうございましたー。

その他の回答 (1)

  • maiko0318
  • ベストアンサー率21% (1483/6969)
回答No.1

ソース(プログラム)上で改行するのに使います。 \につづいて改行します(後ろになにか書いてはいけない。スペースもダメ)

sera_jp
質問者

お礼

わかりましたー。ありがとうございましたー。

関連するQ&A