C言語なら俺に聞け 163 (987レス)
C言語なら俺に聞け 163 http://mevius.5ch.net/test/read.cgi/tech/1721137434/
上
下
前次
1-
新
通常表示
512バイト分割
レス栞
抽出解除
レス栞
235: はちみつ餃子 ◆8X2XSCHEME (ワッチョイ d7e2-6w0d) [sage] 2024/09/18(水) 15:47:33.09 ID:3rwci13t0 >>233 sizeof(char*)/sizeof(char) ということになる。 sizeof(char) は確実に 1 だから結果としては単に char* のバイト数ってことだね。 この場合は「『もし 10 に意味があるとしても』境界チェックはされないことに変わりないのでなんの役にも立ってない。 役に立てるとしたらここまで書かなきゃならない」というのが主旨なのであくまでもしもの話。 実際の値はどうでもよい文脈だと思う。 http://mevius.5ch.net/test/read.cgi/tech/1721137434/235
237: デフォルトの名無しさん (スプッッ Sd3f-2MD7) [] 2024/09/18(水) 16:43:30.74 ID:LEoKOQZWd >>235 >>222 の「これなら[10]に意味が出る」ってのは間違いってことね。 http://mevius.5ch.net/test/read.cgi/tech/1721137434/237
273: デフォルトの名無しさん (ワッチョイ 63e3-VZV9) [] 2024/09/26(木) 23:55:11.03 ID:jCy2QsTx0 >>235 これの1行目は文字列長によらず固定値にならない? char* と char[] を区別できてないように思う // これは (ヌル文字を含む) 4バイトのデータがスタック上に作られる // sizeof(a1) の結果は文字列数により変わる char a1[] = "abc"; // こう書いた場合、文字列の実体は静的な領域 (テキスト領域) に確保され、 // a2にはそのアドレスが渡される。 // sizeof(a2) はポインタのサイズであり、値は文字列長によらず固定 char* a2 = "abc"; http://mevius.5ch.net/test/read.cgi/tech/1721137434/273
メモ帳
(0/65535文字)
上
下
前次
1-
新
書
関
写
板
覧
索
設
栞
歴
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
1.510s*