C++相談室 part166 (769レス)
C++相談室 part166 http://mevius.5ch.net/test/read.cgi/tech/1745631298/
上
下
前次
1-
新
通常表示
512バイト分割
レス栞
抽出解除
必死チェッカー(本家)
(べ)
自ID
レス栞
あぼーん
リロード規制
です。10分ほどで解除するので、
他のブラウザ
へ避難してください。
762: はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 4d32-o1Ob) [sage] 2025/11/17(月) 10:18:46.23 ID:DdlSQj440 >>761 '\n' に変換するという説明は誤りだと私も思う。 規格内の例中では \n と同等というような説明はあるのでこれを変換と誤解したのかも? https://timsong-cpp.github.io/cppwp/n4950/lex.string#5 http://mevius.5ch.net/test/read.cgi/tech/1745631298/762
763: はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 4d32-o1Ob) [sage] 2025/11/17(月) 10:27:40.74 ID:DdlSQj440 余談だけど生文字列リテラルの扱いにはちょっと変な特別扱いがある。 C++ では処理の初期段階で行を連結 (改行を削除) してしまうことになっていて、その時点では各改行が生文字列リテラルの中なのかどうか認識してない。 https://timsong-cpp.github.io/cppwp/n4950/lex#phases-1.2 後でトークンを分割するときになって生文字列リテラルを認識したらその範囲では連結を「取り消す」という処理が入る。 https://timsong-cpp.github.io/cppwp/n4950/lex#pptoken-3.1 結果としては改行はそのまま含まれるだけなんだけど、理屈としては色々な操作 (変換?) はされてる。 ただ、これは C++ の言語の解釈の話であって処理系の実装方法ではない。 つまり結果が同じであれば実装方法は問わないので連結してから取り消すのではなく連結の例外にしてもかまわないし、 生文字列リテラルを普通の文字列リテラルに変換するような手法もあるのかもしれない。 http://mevius.5ch.net/test/read.cgi/tech/1745631298/763
メモ帳
(0/65535文字)
上
下
前次
1-
新
書
関
写
板
覧
索
設
栞
歴
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.029s