2009-07-28 24 views
0

akzeptiert das ist, wie ich es bauen: gcc pkg-config --cflags --libs gtk+-2.0 -o Laich spawn_with_pipes.cg_slice_new hat meinen nicht Strukturtyp

Im Snippet Beispiel unten, erhalte ich eine Fehlermeldung: Syntaxfehler vor „Daten - es bezieht sich Daten = g_slice_new (Data), die Variable "Daten" im Code

#include <gtk/gtk.h> 

typedef struct 
{ 
    /* Buffers that will display output */ 
    GtkTextBuffer *out; 
    GtkTextBuffer *err; 

    /* Progress bar that will be updated */ 
    GtkProgressBar *progress; 

    /* Timeout source id */ 
    gint timeout_id; 
}Data; 

data= g_slice_new(Data); //error here 

Antwort

3

Initalisers außerhalb einer Funktion müssen konstante Ausdrücke sind Sie nicht eine Funktion innerhalb sie nennen können

Darüber hinaus.. ist ein int und die Rückgabe von g_slice_new ist ein gpointer.

Sie müssen die Definition von „Daten“ und bewegen Sie die Initialisierung in dem Haupt ändern:

gpointer data; 

int main(int argc, char *argv[]) 
{ 
    ... 
    data = g_slice_new(Data); 
Verwandte Themen