私struct
のプログラムでは、次のように定義されています。
struct memregion { void * from; void * to; intモード; }
私は自分のプログラムで、この構造体の配列をとして宣言しstruct memregion regions[10]
ます。次に、それを関数に渡しますget_mem_layout(regions, 10)
。その宣言は次のとおりです。
void get_mem_layout(struct memregion * region、int size)
ただし、構造体の任意のメンバー変数にデータを書き込もうとすると、
region [j] .mode = 1;
また
void * addr; addr =(void *)0; リージョン[j].from= addr;
セグメンテーション違反が発生しました。なぜこれが起こっているのか判断できません。助けてください。
更新:割り当ての一部であったため、完全なコードが削除されました。@paddyの回答で問題は解決しました。