如何访问作为指针放入数组中的结构?
如何正确访问boote
数组?我也试过使用boot = *boote[i];
typedef struct boot {
char name[30];
} Boot;
Boot *boote[3] = {NULL, NULL, NULL};
Boot boot;
scanf("%s", boot.name);
boote[0] = &boot;
for (int i = 0; i < 3; i++) {
if (boote[i]->name != NULL) {
printf("%s", boote[i]->name ); // why is it empty
}
}
更新
我似乎把局部函数的引用放到了全局函数中。
因此,我如何将实际的
boot
存储在boote
中,比如boote[0]=boot;这会给我一个错误 最佳答案
撇开strcpy
不谈,访问结构的方式是可以的,实际上“abc”正在打印。但是,在for
循环中,您正在循环bootie[1]
和bootie[2]
这两个尚未分配的循环,因此它不会打印任何内容。
关于c - 如何访问放入数组的结构作为指针,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23878897/