構造体の配列を静的に宣言した場合と同じように参照できるように、構造体の配列を動的に割り当てようとしています。私はcalloc()が割り当てられたメモリをすべて0に初期化するという追加のステップを行うことを理解しています。しかし、それ以外のコードは次のコードに対して完全に互換性がありますか? fread()とfwrite()を使用してこれらのデータ構造をファイル内外に取得する場合、calloc()はこれを助けるか妨げますか?calloc、malloc、および動的構造体割り当て
#define MAGIC 13
struct s_myStruct {
int a[6000][400];
int b[6000][400];
int c[6000][400];
};
struct s_myStruct stuff[MAGIC];
vs
struct s_myStruct *stuff = calloc(MAGIC, sizeof(s_myStruct);
ありがとうございます。
これはファイルと何が関係していますか? – Joe
配列に "universal zero initializer"を使うこともできます: 'struct s_myStruct stuff [MAGIC] = {0};' – pmg