Develop
2003.04.23 09:45
[c] 간단한 링크드 리스트(linked list) 자료형 예제..
조회 수 9838 댓글 0
# 간단한 링크드 리스트 자료형 예제
typedef struct { int index; char name[10]; char sex; int age; char mail[50]; char phone[15]; char address[128]; }USER_INFO; typedef struct list_node *list_ptr; typedef struct list_node { USER_INFO user_info; list_ptr next; }LIST_NODE; list_ptr first=NULL; unsigned long list_cnt=0; list_ptr find_list_ptr(int node) { unsigned long i; list_ptr tmp=first; if( node > list_cnt ) node = list_cnt; if( tmp == NULL ) return NULL; for( i=1 ; i<node ; i++ ) { tmp = tmp->next; } return tmp; } // add list to end of list void add_list() { list_ptr tmp, end; tmp = (list_ptr)malloc( sizeof(LIST_NODE) ); tmp->next = NULL; if( list_cnt == 0 ) { first = tmp; } else { end = find_list_ptr( list_cnt ); end->next = tmp; } list_cnt++; } void insert_list(unsigned long node) { list_ptr tmp, node_ptr,node_next_ptr ; tmp = (list_ptr)malloc( sizeof(LIST_NODE) ); tmp->next=NULL; if( node >= list_cnt) { add_list(); return; } node_ptr = find_list_ptr(node); node_next_ptr = node_ptr->next; node_ptr->next = tmp; tmp->next = node_next_ptr; list_cnt++; } void Del_list() { unsigned long i; list_ptr tmp = first; list_ptr tmp_next; for( i=0 ; i<list_cnt; i++ ) { if( tmp->next != NULL) { tmp_next = tmp->next; free(tmp); tmp = tmp_next; } else { if( tmp != NULL ) free(tmp); } } list_cnt = 0; }
번호 | 분류 | 제목 | 글쓴이 | 날짜 | 조회 수 |
---|---|---|---|---|---|
841 | Develop | '2014 모바일 개발 트렌드' 발표자료입니다. | hooni | 2014.10.02 | 974 |
840 | Develop | Aspect Oriented Programming in Objective-C | hooni | 2015.05.18 | 672 |
839 | Develop | DDay Memo 1.9.4 소스코드 | hooni | 2015.10.03 | 0 |
838 | Develop | GCM 사용하기 2 (단말에 GCM 구현하기) | hooni | 2013.07.06 | 23248 |
837 | Develop | GCM 사용하기 3 (JSP로 GCM 푸시 서버 만들기) 4 | hooni | 2013.07.06 | 25315 |
836 | Develop | git 브런치 배우기 (링크) | hooni | 2013.07.09 | 20571 |
835 | Develop | GPL, AGPL, MPL,.. 한눈에 보는 오픈소스SW 라이선스 | hooni | 2014.10.14 | 1144 |
834 | Develop | How to Test SMTP AUTH using Telnet | hooni | 2018.04.05 | 1324 |
833 | Develop | JSON, BSON 변환 | hooni | 2013.04.23 | 11814 |
832 | Develop | Laravel 5 Failed opening required bootstrap/../vendor/autoload.php | hooni | 2018.01.24 | 1644 |
831 | Develop | Mac OS 에 Jenkins 설치하기 (Homebrew) 2 | hooni | 2017.03.15 | 8070 |
830 | Develop | macOS에 node, npm 설치하기 (homebrew) | hooni | 2021.11.06 | 1130 |