[過去ログ] C言語なら俺に聞け 151 (1002レス)
前次1-
抽出解除 必死チェッカー(本家) (べ) 自ID レス栞 あぼーん

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
532
(1): (オッペケ Sr8b-lJiK) 2019/05/15(水)12:31 ID:dMKqDPXvr(1/2)調 AAS
>>529
呼び出す側がバージョン情報をもっておいて、処理側で振り分けてアクセスしないようにすれば問題ないね

#define version 2

void func (const struct* foo) {
func_impl(foo, version);
}

void func_impl(const struct* foo, int version) {
if (version > 1) {
foo.b;
}
}
537
(2): (オッペケ Sr8b-lJiK) 2019/05/15(水)14:41 ID:dMKqDPXvr(2/2)調 AAS
>>535
intが4バイトなんて保証はないから、char[] bufの大きさを決められないって話でしょ?
intメンバを追加したとして、bufのサイズはどれだけ減らせばいいのかわからないのが問題
4の環境が多いだろけど、2の環境だと2を減らさなきゃいけないわけで

dll差し替えで再ビルドしない場合、構造体サイズが変わると特に配列渡しの場合はセグメンテーションフォールトになる可能性が高くて危険
セーブデータみたいに構造体をそのままファイルに落とすとしても、サイズはずっと不変なのが扱いやすいね
前次1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.041s