GTK+遇到一个超怪异的错误,定义的结构体赋值就出错。

时哲 2008-10-08 02:15:14
大家好!
我在头文件mystruct.h里定义了一个结构体。


typedef struct _AppData AppData;
struct _AppData {
GtkWidget *images;
gchar *filename_n;
gchar *filename_c; };





然后再在我的interface.c里引用这个头文件,创件了一个结构。




AppData *imgPlanC;
imgPlanC->filename_n = "./pixmaps/plan_n.png";
imgPlanC->filename_c = "./pixmaps/plan_c.png"; //程序只要运行到这里就出错,除非我定义它为NULL
//可通过编译,但是让窗口无法启动


请问这个错误是何原因造成。谢谢!
...全文
63 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
jufeng2309 2008-10-08
  • 打赏
  • 举报
回复

AppData *imgPlanC = new AppData();
imgPlanC->filename_n = "./pixmaps/plan_n.png";
imgPlanC->filename_c = "./pixmaps/plan_c.png";

once_and_again 2008-10-08
  • 打赏
  • 举报
回复
除非指着初始化时候可以指向什么
其他时候赋值,要给空间
fox000002 2008-10-08
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 littlefirebug 的回复:]
显然是没有给结构体对象分配内存空间。
[/Quote]

没有分配内存,纯属乱用
littlefirebug 2008-10-08
  • 打赏
  • 举报
回复
显然是没有给结构体对象分配内存空间。
时哲 2008-10-08
  • 打赏
  • 举报
回复
我真是要哭了啊。太长时间不用C语言写代码了。真是感谢大家!
brookmill 2008-10-08
  • 打赏
  • 举报
回复
没用过GTK
难道imgPlanC指针不用分配空间的么?
时哲 2008-10-08
  • 打赏
  • 举报
回复
补充一下,就这样它也报错


//imgPlanC->filename_n = "./pixmaps/plan_n.png";
imgPlanC->filename_c = "./pixmaps/plan_c.png";



你们说是不是很怪异!!!

23,110

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
  • 应用程序开发区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧