ANSI C编译错误:在‘;之前应为表达式’;代币
当我试图编译我编写的一段代码时,仍然会遇到这个错误,文件中的位置完全没有帮助。这使用了GTK2.0 以下是我在编译时收到的信息: charles@draton-generico:~/Documents/C89$gcc-xc-ansi-gbahbah.c-obahbahANSI C编译错误:在‘;之前应为表达式’;代币,c,compiler-errors,c89,C,Compiler Errors,C89,当我试图编译我编写的一段代码时,仍然会遇到这个错误,文件中的位置完全没有帮助。这使用了GTK2.0 以下是我在编译时收到的信息: charles@draton-generico:~/Documents/C89$gcc-xc-ansi-gbahbah.c-obahbahpkg-config--cflags--libsgtk+-2.0 bah.c:在函数“main”中: bah.c:28:1:错误:在“,”标记之前应该有表达式 以下是我试图编译的代码: #include <stdio.h>
pkg-config--cflags--libsgtk+-2.0
bah.c:在函数“main”中:
bah.c:28:1:错误:在“,”标记之前应该有表达式
以下是我试图编译的代码:
#include <stdio.h>
#include <stdlib.h>
#include <gtk/gtk.h>
#define EXIT_SUCCESS 0
#define EXIT_FAILURE 1
void closure(void)
{
gtk_main_quit();
printf("gtk_main_quit() has been called.\n");
}
void main(int argc, char* argv[])
{
gboolean check = gtk_init_check(&argc, &argv);
if (check == FALSE)
{
printf("Failed to initialize toolkit.\nTerminating.\n");
exit(EXIT_FAILURE);
}
else
{
printf("Initialized toolkit.\n");
GtkWidget* main_window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
gtk_window_set_title((GtkWindow*)main_window, "BLAH");
gtk_window_set_default_size((GtkWindow*)main_window, 700, 700);
g_signal_connect(main_window, "delete-event", closure, void);
gtk_widget_show(main_window);
printf("Window created, sleeping in gtk_main().\n");
gtk_main();
}
printf("Exiting.\n");
exit(EXIT_SUCCESS);
}
#包括
#包括
#包括
#定义退出\u成功0
#定义退出故障1
空隙闭合(空隙)
{
gtk_main_quit();
printf(“gtk_main_quit()已被调用。\n”);
}
void main(int argc,char*argv[])
{
gboolean check=gtk_init_check(&argc,&argv);
如果(检查==FALSE)
{
printf(“未能初始化工具箱。\n正在初始化。\n”);
退出(退出失败);
}
其他的
{
printf(“初始化的工具包。\n”);
GtkWidget*主窗口=gtk窗口新窗口(gtk窗口顶层);
gtk_窗口设置标题((GtkWindow*)主窗口,“BLAH”);
gtk_窗口_设置_默认_大小((GtkWindow*)主窗口,700700);
g_信号连接(主窗口,“删除事件”,关闭,无效);
gtk_小部件_显示(主窗口);
printf(“创建的窗口,在gtk_main()中睡眠。\n”);
gtk_main();
}
printf(“正在退出。\n”);
退出(退出成功);
}
请帮忙(在第28行中使用
NULL
替换void
)
g_signal_connect(main_window, "delete-event", closure, NULL);
使用第28行中的
NULL
替换void
g_signal_connect(main_window, "delete-event", closure, NULL);
void
是一个关键词
!
下面是对g\U信号连接()的描述:
那么,您只想不向这个函数传递任何内容?那么您应该使用
NULL
void
是关键字
!
下面是对g\U信号连接()的描述:
那么,您只想不向这个函数传递任何内容吗?那么您应该使用
NULL
g\u信号连接(主窗口,“删除事件”,关闭,无效);该无效是否应该为NULL?第28行是什么?我想这就是问题所在。更改void=>NULL信号连接(主窗口,“删除事件”,关闭,无效);这个空应该是空的吗?第28行是什么?我想这就是问题所在。Change void=>null