Re: passing glist to func
- From: learfox furry ao net
- To: GTK Application Development List <gtk-app-devel-list gnome org>
- Subject: Re: passing glist to func
- Date: Mon, 9 Oct 2000 13:34:00 -0700 (PDT)
void foo(GList *a)
{
a=g_list_append(a, "text");
a=g_list_first(a);
printf("a=%s\n", (char *) a->data);
}
The g_list_*() functions you called there work like realloc(), meaning
their return pointer may not be the same as the input one.
So I would make:
GList *foo(GList *a)
{
a = g_list_append(a, "text");
a = g_list_first(a);
return(a);
}
Then in main:
int main()
{
GList *list=NULL;
foo(list);
list=g_list_first(list);
printf("list=%s\n", (char *) list->data);
return 0;
}
Change that to:
int main()
{
GList *list = NULL, *next;
list = foo(list);
/* list = g_list_first(list); */
next = list;
while(next != NULL)
{
printf("list = %s\n", (char *)next->data);
next = next->next;
}
return(0);
}
--
Sincerely, ,"-_ \|/
-Capt. Taura M. , O=__ --X--
..__ ,_JNMNNEO=_ /|\
OMNOUMmnne. {OMMNNNEEEEOO=_
UOOOBIOOOEOMMn. 'LONMMMMNNEEEOOO=.__..,,..
UUOOEUUOOOOOOOObe '"=OMMMMWNEEEOOOOO,"=OEEEOO=,._
OOUUUIEEIOONNOIUbe. "7OMMMMNNNNNWWEEEEOOOOOO" "'.
EEBNNMMMNWNWWEEIMMNe. __ 7EMMMNNNNNWWWEEEEEEEOO. " .
NNMMMMWWWMMMWEINMMMNn "=BBEEEEMMMMMMMMNNNWWWEEOOOOO=._ .
http://furry.ao.net/~learfox/
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]