#include <stdio.h>
typedef struct test{
int app;
}test;
int main()
{
int fi;
FILE* fp;
test* banned;
banned->app=2;
fi=chdir("/home");
printf("%d", fi);
return 0;
}
这是一个较大的程序的一部分。我需要能够从一个读入文件导航到一个目录,并将这些信息放入一个结构体中。然而,每当这个程序编译它seg故障。在gcc上编译运行gdbSegfault与箭头运算符在C运行chdir然后打印
#0 0x08048421 in main()
这是编译器的问题,还是代码中缺少某些东西来启用它?
注意:这已经解决了我是一个完全的白痴,并试图从帽子里拉出一个拉博特,我只是在我头脑中进行了简单的说明......否则我知道我没有将我的参考与实际值相关联,因此编译器投掷一个合适的。该解决方案是建立一个“真正的结构”,然后通过参考具有参考指针指向该= & normalpointer感谢您的帮助
也不亚于ID爱用的结构没有参考,我需要这种传递到不同的功能。但是,提到解决方案比什么IM做
“它赛格故障” - 哎呀,有什么惊喜,'banned'具有明确的价值和所有。 –
禁止未初始化。改为禁止测试; banned.app = 2;' – BLUEPIXY
你还没有分配任何被禁止的空间。 – cup