スポンサーリンク

C/C++で¥nで改行されないときの対処法

スポンサーリンク
ITを活用する

こんにちは。最近必要に迫られてC++の勉強をしています。

入門書を見ると、CやC++などでは「¥n」で改行をすると書いてあるのですが、実際に実行してみると改行が反映されず、文字列として出力される、ということが起こりました。

※あえて全角の「¥」を使っています。本来は半角です。

コード

#include <iostream>
using namespace std;
 
int main()
{
    cout << "ようこそ!¥n" ;
    cout << "いんどあたいむへ¥n";
    return 0;
}

出力結果

ようこそ!¥nいんどあたいむへ!¥n

原因

環境依存文字が原因でした。MacとWindowsでは標準の文字コードが違うため、「/」に対応するコードが違います。

筆者はMacを使っているのですが、書籍はWindows向けに書いてありました。

解決策

¥n」を「 \n」に置き換えます。(半角に直してください)

コード

#include <iostream>
using namespace std;
 
int main()
{
    cout << "ようこそ!¥n" ;
    cout << "いんどあたいむへ!¥n";
    return 0;
}

出力結果

ようこそ!
いんどあたいむへ!

まとめ

Macユーザーの方はCやC++で改行は「\n」を使いましょう。

環境依存文字は知識として知っている方は多いですが、気を抜くと忘れてしまいがちなので注意しましょうね。

タイトルとURLをコピーしました