ところが、改行を含む文字列を扱う際に、1点注意点があります。それは
ソースファイル上の改行コードに関わらず、Raw文字列の改行コードは \n になる
という点です。
#include <iostream>
#include <string>
int main(void)
{
// ソースファイル上、aとbの間は\r\n
// しかし、Raw文字列には\nが格納される
std::string raw = R"(a
b)";
// 改行コードは\n(1バイト)
std::cout << raw.size(); // => "3"
}
Windowsを使っている場合には、要注意であると言えます。
0 件のコメント:
コメントを投稿