C言語なら俺に聞け 163 (977レス)
C言語なら俺に聞け 163 http://mevius.5ch.net/test/read.cgi/tech/1721137434/
上
下
前次
1-
新
通常表示
512バイト分割
レス栞
抽出解除
必死チェッカー(本家)
(べ)
自ID
レス栞
あぼーん
リロード規制
です。10分ほどで解除するので、
他のブラウザ
へ避難してください。
174: はちみつ餃子 ◆8X2XSCHEME (ワッチョイ f732-vU+L) [sage] 2024/09/15(日) 01:30:47.17 ID:B6k8li/O0 >>173 配列とその初期化子として現れる文字列リテラルが別の存在だってことが俺が何度も書いてることだよ。 これがそんなに何度も何度も何度も何度も書かないと理解できないようなことか? 別のポインタは配列を指せるが、その初期化子として現れる文字列リテラルを指せるわけじゃない。 char* foo = "hoge"; のようなケースではポインタ foo は文字列リテラルを指してるということと対比しての話だぞ。 http://mevius.5ch.net/test/read.cgi/tech/1721137434/174
178: はちみつ餃子 ◆8X2XSCHEME (ワッチョイ f732-vU+L) [sage] 2024/09/15(日) 01:46:17.50 ID:B6k8li/O0 >>175 > 静的記憶期間というのはスコープの事 ちがう。 記憶域期間はオブジェクトの寿命の区分。 6.2.4 を参照のこと。 寿命の区分が設定されている以上はオブジェクト (メモリ上のどこかにある) のこと。 > 文字列リテラルで生成されたデータは実行時には確実にアクセス可能で、消えてるなんて全くあり得ない 関数 (C のプログラムは関数の集合なので実質的にプログラムの全て) はオブジェクトではない。 私が「消える」と表現したのはこの意識があったからだが、機械語のレベルでどこかには存在するという意味ではそりゃ存在するだろう。 (同じ内容が連続する配列だったらループで書き込むような形にすることもあるかもしれない。) 配列の初期化子としての文字列リテラルは本来あるべき場所 (オブジェクト) から最適化で消えてるし、ポインタで指すことは出来ない。 http://mevius.5ch.net/test/read.cgi/tech/1721137434/178
179: はちみつ餃子 ◆8X2XSCHEME (ワッチョイ f732-vU+L) [sage] 2024/09/15(日) 01:53:34.48 ID:B6k8li/O0 >>177 C++ の右辺値参照も左辺値参照も左辺値なんだよね。 参照を経由したら左辺値になるなら最初からそう出来ないか? と思ったことはある。 http://mevius.5ch.net/test/read.cgi/tech/1721137434/179
メモ帳
(0/65535文字)
上
下
前次
1-
新
書
関
写
板
覧
索
設
栞
歴
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.037s