2017-08-11 15 views
-3

私は単純な端末ゲームで作業しています。しかし、私はASCIIに変換されたテキストをいくつか出力しようとします。私は不正な形式の出力を得る。cout、C++でASCIIに変換されたテキストを出力する際の出力が不正です

コード;

cout << " _________ _____ ____  _______ __ ___________ "<<'\n'; 
    cout << "/___\__ \/ \_/ __ \ /_ \ \/ // __ \_ __ \ "<<'\n'; 
    cout << "//_/ > __ \| Y Y \ ___/ ( <_>) /\ ___/| | \/"<<'\n'; 
    cout << " \___ (____ /__|_| /\___ > \____/ \_/ \___ >__| "<<'\n'; 
    cout << "/_____/  \/  \/  \/     \/  "<<'\n'; 

出力:

 _________ _____ ____  _______ __ ___________ 
    /_____ / _/ __ /_ /// __ _ __ 
    //_/ > __ | Y Y ___/ ( <_>) /___/| |/
    ___ (____ /__|_| /___ > ____/ _/ ___ >__| 
    /_____/ / / /    /
+1

バックスラッシュはエスケープ文字を表していますか?生の文字列リテラルを試してください。 –

答えて

2

C++は、escape characterのように文字列で\を使用しますが、バックスラッシュを表示するために\\を使用する必要があります。これの欠点は、あなたの文字列が、その後プログラム出力に非常に異なって見える可能性があるということである:C++ 11では

std::cout << " _________ _____ ____  _______ __ ___________ "  <<'\n'; 
std::cout << "/___\\__ \\/ \\_/ __ \\ /_ \\ \\/ // __ \\_ __ \\ "<<'\n'; 
std::cout << "//_/ > __ \\| Y Y \\ ___/ ( <_>) /\\ ___/| | \\/" <<'\n'; 
std::cout << " \\___ (____ /__|_| /\\___ > \\____/ \\_/ \\___ >__| " <<'\n'; 
std::cout << "/_____/  \\/  \\/  \\/     \\/  " <<'\n'; 

raw string literalsは生活を楽にします。 R"(yourstring)"

std::cout << R"( _________ _____ ____  _______ __ ___________)"<<'\n'; 
std::cout << R"(/ ___\__ \/ \_/ __ \ /_ \ \/ // __ \_ __ \)"<<'\n'; 
std::cout << R"(/ /_/ > __ \| Y Y \ ___/ ( <_>) /\ ___/| | \/)"<<'\n'; 
std::cout << R"(\___ (____ /__|_| /\___ > \____/ \_/ \___ >__| )"<<'\n'; 
std::cout << R"(/_____/  \/  \/  \/     \/  )"<<'\n'; 
2

ふむ、ちょうど\を倍増またはR文字列を使用します。それが直接表示されていないので、

std::cout << " _________ _____ ____  _______ __ ___________ " << '\n'; 
std::cout << "/___\\__ \\/ \\_/ __ \\ /_ \ \\/ // __ \\_ __ \\ " << '\n'; 
std::cout << "//_/ > __ \\| Y Y \\ ___/ ( <_>) /\\ ___/| | \\/" << '\n'; 
std::cout << " \\___ (____ /__|_| /\\___ > \\____/ \\_/ \\___ >__| " << '\n'; 
std::cout << "/_____/  \\/  \\/  \\/     \\/  " << '\n'; 


    _________ _____ ____  _______ __ ___________ 
/___\__ \/ \_/ __ \ /_ \/ // __ \_ __ \ 
//_/ > __ \| Y Y \ ___/ ( <_>) /\ ___/| | \/ 
\___ (____ /__|_| /\___ > \____/ \_/ \___ >__| 
/_____/  \/  \/  \/     \/ 
関連する問題