Хорошо, поэтому для структуры видеоигры, над которой я работаю, мне нужно выделить структуру "комнаты" внутри структуры "подземелье".К сожалению, я не могу выделить достаточно памяти, чтобы разместить всю необходимую мне информацию.Вот пример моей структуры данных:
typedef struct monster {
int difficulty;
char *name;
char *type;
int hp;
} monster;
typedef struct rooms {
int n_monsters;
int visited;
struct rooms *nentry;
struct rooms *sentry;
struct rooms *wentry;
struct rooms *eentry;
monster *monsters;
} rooms;
typedef struct dungeon {
char *name;
int n_rooms;
rooms *rm; // Subject to change
rooms sroom;
} dungeon;
И именно здесь я получаю ошибку сегментации.
d->name = "Dungeon 1";
d->n_rooms = 10;
rooms *room = malloc(d->n_rooms * sizeof(rooms));
// Room 0
room[0].n_monsters = 1;
room[0].visited = 0;
*room[0].sentry = room[1]; // xCode is showing the seg-fault here
// Room 2
room[1].n_monsters = 1;
room[1].visited = 0;
*room[1].nentry = room[0];
d->rm = room;
Почему я получаю ошибку сегмента?Я выделяю достаточно памяти?