파일은 총 7개

main.c//메인

phonFunc.c//함수

screenOut.c


common.h//stdio.h 등등

phoneData.h//구조체선언

phoneFunc.h//함수선언

screenOut.h//그냥 출력



링크드 리스트로 정렬 하기 위한 코드를 PhonFunc에다


phoneData * sort_linked(phoneData *s)

{

phoneData *pPrevNode1;

phoneData *pPrevNode2,*pForChange;

phoneData *pNext;


for(pPrevNode1=s;pPrevNode1!=NULL&&pPrevNode1->link!=NULL;pPrevNode1=pPrevNode1->link)

{

pForChange=pPrevNode1;

for(pPrevNode2=s;pPrevNode2!=NULL&&pPrevNode2->link!=NULL;pPrevNode2=pPrevNode2->link)

if(strcmp(pForChange->link->name,pPrevNode2->link->name)>0)

pForChange=pPrevNode2;

if(pForChange!=pPrevNode1)

{

// [prev1] -> [A] -> [B] -> [change] -> [C] -> [D]


            // C를 임시 저장하고

            pNext = pForChange->link;


            // [prev1] -> [A] -> [B] -> [change] -> [D]    [C]

            pForChange->link = pNext->link ;


            // [prev1] -> [A] -> [B] -> [change] -> [D]    [C] -> [A]

            pNext->link = pPrevNode1->link ;


            // [prev1] -> [C] -> [A] -> [B] -> [change] -> [D]

            pPrevNode1->link = pNext ;

        }

    }

return s;


}


이렇게 짜고서


main 에다가

sort_linked(pPhoneList);


넣었는데 pPhoneList가 식별자가 없다고하는거야.


그래서 phoneData.h에다가 


#ifndef __PHONEDATA_H__

#define __PHONEDATA_H__


#define NAME_LEN 30

#define PHONE_LEN 30


typedef struct __phoneData 

{

    char name[NAME_LEN];

    char phoneNum[PHONE_LEN];


struct __phoneData *link;

} phoneData;


 phoneData * pPhoneList = NULL;


#endif


이렇게 선언해주고 phoneFunc에 있는  phoneData * pPhoneList = NULL; 지우고 돌렸거든


그러니까 여러번 정의된 기호라고 지랄하는데 어쩌지..