Итак, у меня есть 3 файла: main.c, country.h и country.c
Я объявляю указатель структуры, названной "Страна" в странах. H
Я включилcountry.h в странах.c и main.c
и объявил структуру своей собственной в странах.c
стран.ч
typedef struct Country* pCountry;
country.c
struct Country {
char *name;
pCity cities;
int numCities;
pTerritory countryTerr;
};
Теперь я хочу создать массив указателей структуры Country, используя malloc
, поэтому я сделал это:
pCountry countries_array;
countries_array = (pCountry);
malloc(num_of_countries*sizeof(countries_array));
и назначить указатели для каждого указателя, хотя malloc, кажется, работает, я не могу
назначить указатели для элементов в массиве, используя []:
countries_array[0]= new_pointer;
Я получаю «недопустимое использование undefine struct country» и «разыменование указателя на неполное»,
В чем проблема с кодом?
спасибо