[過去ログ]
C言語なら俺に聞け 163 (1002レス)
C言語なら俺に聞け 163 http://mevius.5ch.net/test/read.cgi/tech/1721137434/
上
下
前次
1-
新
通常表示
512バイト分割
レス栞
抽出解除
必死チェッカー(本家)
(べ)
自ID
レス栞
あぼーん
このスレッドは過去ログ倉庫に格納されています。
次スレ検索
歴削→次スレ
栞削→次スレ
過去ログメニュー
リロード規制
です。10分ほどで解除するので、
他のブラウザ
へ避難してください。
336: はちみつ餃子 ◆8X2XSCHEME (ワッチョイ f532-Q1tn) [sage] 2024/11/08(金) 13:02:23.75 ID:Me1tPYCI0 char と wchar_t の不整合じゃなくて const の有無の問題じゃないの? C++ で文字列リテラルまわりの扱いで仕様変更があったからそれに関係してるのかも? C++ での文字列リテラルの型は const char[] (ワイド文字リテラルの場合は const wchar_t[]) だが、文字列リテラルから直接変換する場合に限り char* (ワイド文字リテラルの場合は wchar_t*) に暗黙に変換して構わないというルールが C++03 まではあって、このルールは C++11 で削除されたという経緯がある。 つまり C++11 以降は文字列リテラルから暗黙には const を剥がすことが出来ない。 (キャストを書けば出来るけど。) C では文字列リテラルの型は元から char[] で、 const が付いてない。 だから const まわりの制限とは関係ないんだが、これは C の仕様のほうがおかしいし、 C++ と同様の判定をしたほうが理に適っているとマイクロソフトが考えることはあるかもしれない。 http://mevius.5ch.net/test/read.cgi/tech/1721137434/336
341: はちみつ餃子 ◆8X2XSCHEME (ワッチョイ f532-Q1tn) [sage] 2024/11/08(金) 17:24:12.05 ID:Me1tPYCI0 >>338 > 昔の仕様だとconst charに見えて実際は違かったってこと? C の規格としては本来的に文字列リテラルの型には const は付かない。 これは今も昔も同じ。 変更はない。 なので何かが変わったとしたらマイクロソフトの独自仕様。 私はそのへんに詳しいわけじゃないけど C++ の規格改定に引きずられた可能性は想像できるなぁというぼんやりした予想なので経緯はわからぬ。 でもまあ結果的に const の問題ってのは妥当なみたいだね。 http://mevius.5ch.net/test/read.cgi/tech/1721137434/341
メモ帳
(0/65535文字)
上
下
前次
1-
新
書
関
写
板
覧
索
設
栞
歴
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.043s