-2
我有类型结构的二维地图,我想初始化结构的条件元素枚举UNKNOWN。这段代码在C中有什么问题?
编译正常,但它给出了我无法解决的分段错误。
#include<stdio.h>
enum myenum {EXPLORED, UNKNOWN,}condition;
struct tile {
int x;
int y;
int condition;
};
struct tile* map[8][8];
void init_map() {
for (int i = 0; i < 8; i++) {
for (int j = 0; j < 8; j++) {
map[i][j]->condition = UNKNOWN;
}
printf("\n");
}
}
void print_map() {
for (int i = 0; i < 8; i++) {
for (int j = 0; j < 8; j++) {
printf("%d ", map[i][j]->condition);
}
printf("\n");
}
}
void main() {
init_map();
print_map();
}
任何的帮助深表感谢
你从来没有真正初始化的指针本身指向任何东西。 – user2357112
将来在调试器下运行程序 - 您至少会看到它的位置在哪里爆炸 – pm100
“我有2-D类型结构的地图” - 不。您有一个_2D数组的**指向**' struct'_!这正是你的问题! (你对这句话的其余部分是什么意思) – Olaf