我看到了很多关于这个的问题,但我提出了一个问题,因为这与我在其他问题中看到的相去甚远......我认为结构已经很好地初始化了......至少在理论上......
GdkColor 是 GTK 中的一个结构,内部有 4 个 int 数字,所以 {0, 65535, 0, 0} 来初始化它...
我正在使用 gcc 编译器。
所以我有这个结构:
#include <gtk/gtk.h>
typedef struct components{
GtkWidget *window;
GtkWidget *table;
GtkWidget *table_box;
GtkWidget *describe;
GdkColor color;
const gchar *gcolor;
GtkWidget *combo_bboard;
GtkWidget *combo_bmcu;
GtkWidget *go;
GtkWidget *plugin_notebook;
const gchar *notebook_name_pages[5];
gint num_pages;
GtkWidget *name_page;
GtkWidget *frame;
GtkWidget *content;
GtkWidget *checkbutton;
}plugin_items;
/* plugin_items items; */
plugin_items items = { NULL, NULL, NULL, NULL, { 0, 65535, 0, 0 },
{"red"}, NULL, NULL, NULL, NULL, { "Features", "Diagram",
"Peripherals", "Registers", "ASM Instructions" }, 0, NULL,
NULL, NULL, NULL };
/* THIS Is THE 32 LINE that gcc complains about */
items.num_pages = (gint)( (sizeof( items.notebook_name_pages)/sizeof( void *));
当我编译时出现一个奇怪的错误:
gcc -c environment.c -fPIC `pkg-config --cflags gtk+-2.0`
environment.c:32:6: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘.’ token
make: *** [environment.o] Error 1
我很累,但我认为一切都很好......
为什么?上帝啊救救我吧....
有没有人知道如何解决这个问题?我不知道是什么错误...我正在使用 GTK。我无法解决这个问题,我不明白错误:S,我找不到它......我在 DEAD END 中停留了大约两天......
我很感激你的帮助,请伙计们。也许我正在做一些完全愚蠢的事情......但我不知道在哪里:S
提前感谢乔恩