Moin,
ich bin gerade dabei, mir die Gtk-Bibliothek anzuschauen, hab allerdings noch nicht so viel Erfahrung in C. Ich hab mich gefragt, ob man GtkWidgets in einem struct zusammenfassen kann, ich bekomme bei allen versuchen immer einen Speicherzugriffsfehler, sehe aber nicht was ich falsch mache. Beispielsweise liefert der folgende code einen Fehler:
#include <gtk/gtk.h>
typedef struct {
int i;
GtkWidget *input;
} MyStruct;
MyStruct *get_struct() {
MyStruct *s;
s->input = gtk_entry_new();
return s;
}
int main(int argc, char **argv) {
gtk_init(&argc, &argv);
GtkWidget *window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
g_signal_connect(window, "delete-event", G_CALLBACK(gtk_main_quit), NULL);
MyStruct *s = get_struct();
gtk_container_add(GTK_CONTAINER(window), GTK_WIDGET(s->input));
gtk_widget_show_all(window);
gtk_main();
return 0;
}
Meine Frage ist nun, ist da ein Fehler drin, oder kann man Widgets nicht in ein struct packen?