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