CnUnix

[알림판목록 I] [알림판목록 II] [글목록][이 전][다 음]
[ CnUnix ] in KIDS
글 쓴 이(By): guest (리스트질문) <165.213.0.2>
날 짜 (Date): 2002년 3월  5일 화요일 오후 01시 07분 48초
제 목(Title): glib에서 링크리스트쓰기..


glib의 gslist의 쓰려하는데..

이런식으로 하면 잘되고 출력도 잘되는데,
 
#include <glib.h>

gint CompareNames(gconstpointer sName1, gconstpointer sName2)
{
    return ((gint) strcmp ((char *) sName1, (char *) sName2));
}

void PrintNames(gpointer data, gpointer user_data)  
{
 
    gchar *message;
    /* convert the data to a string */
    message = (gchar *)data;
    /* display the string */
    g_print("%s\n",message);

}

main()
{
    GSList *list = NULL;
    char sName[] = "조형기";
    list = g_slist_append(list, sName);
    list = g_slist_append(list, "이문세");
    list = g_slist_prepend(list,"박주미");
    list = g_slist_insert(list,"문성근",1);
    list = g_slist_insert_sorted(list, "신성일", CompareNames);
    g_slist_foreach(list, (GFunc) PrintNames, NULL);
    return 0;
}


이런식으로 하려니깐 잘 안되는군요.. 나중에 쩜 (.) 만 찍히네요..
리스트가 다 지워지는듯..
    
main()
{
    GSList *list;
    char inbuf[20];
    for (list = NULL; ;list = g_slist_append(list, inbuf) )
    {
        printf("fgets:%s",fgets(inbuf,20,stdin));
        printf("printf:%s",inbuf);
        if (inbuf[0] == '.')
                break;

    }
    g_slist_foreach(list, (GFunc) PrintNames, NULL);
}
    
머가 문제죠?


[알림판목록 I] [알림판목록 II] [글 목록][이 전][다 음]
키 즈 는 열 린 사 람 들 의 모 임 입 니 다.