J'ai besoin dans la liste globale dans mon application GTK +, j'utiliser pour elle GList:Liste mondiale en C/GTK +
Par exemple:
Je structure:
typedef struct _data
{
Glist list;
}Data;
Je veux utiliser une copie de la liste dans l'ensemble du programme:
J'ai une fonction bulid ma liste:
gboolean build_list()
{
Data->list = g_list_append(Data->list, "First ");
Data->list = g_list_append(Data->list, "Second ");
Data->list = g_list_append(Data->list, "Third ");
g_list_foreach(Data->list, (GFunc)printf, NULL);
}
Après avoir appelé cette fonction pour afficher tous les éléments de la liste:
Premier Deuxième Troisième
, mais lorsque je tente de le faire dans une autre fonction - par exemple:
void foreach()
{
g_list_foreach(Data->list, (GFunc)printf, NULL);
}
Je vois une erreur dans gdb:
** Programme reçu le signal SIGSEGV, Défaut de segmentation. [Mise à Enfiler 0xb7335700 (LWP 5364)] 0xb765a7d7 dans strchrnul() de /lib/i686/cmov/libc.so.6 **
Comment puis-je créer une liste globale dans mon application?
Merci.