このように定義された構造体があります。
typedef struct COUNTRY {
char Code[3];
char Country[30];
int Population;
float Expectancy;
struct Country *Pointer;
} COUNTRY;
次のように割り当てられた構造体の配列を見てきました。
COUNTRY *countries = calloc(128, sizeof(COUNTRY));
または多分このように:
COUNTRY *countries = malloc(128 * sizeof(COUNTRY));
しかし、これは何をしますか:
COUNTRY countries[128] = {};
どのような場合でも、各エントリのフィールドに書き込むことができるからです。3 番目のオプションは単にフォームが悪いだけですか? その行を main() の外側の残りの変数宣言と一緒に配置できるので、私には良いようです。それ以外の場合は、main() またはその他の関数内でのみ loc() または malloc() を呼び出すことができます。
私は何か間違ったことをしていますか?