2014-04-07 5 views
1

연결된 목록을 만들려고 노력하고 있지만 시작 부분에 갇혀 있습니다. 완전한 초보자입니다. 구조를 어떻게 정의 할 수 있습니까?C linked lists "구조체의 재정의"

8 8 C:\Users\user\Desktop\list_funcs.c [Error] redefinition of 'struct data_node' 4 0 C:\Users\user\Desktop\list_funcs.c In file included from list_funcs.c 3 8 C:\Users\user\Desktop\list_funcs.h [Note] originally defined here 28 C:\Users\user\Desktop\Makefile.win recipe for target 'list_funcs.o' failed 여기

#include <stdio.h> 
#include <string.h> 
#include <stdlib.h> 
#include "list_funcs.h" 



    struct data_node { 
char name [25]; 
int data; 
struct data_node *next; 
    }; 

헤더 파일이

#define STRINGMAX 25 

struct data_node { 
char name [STRINGMAX]; 
int data; 
struct data_node *next; 
}; 



struct data_node * insert (struct data_node **, int, char *); 

답변

4

당신의 .c 파일 struct data_node의 정의를 포함 포함하지만 헤더 파일 내용은 다음과 같습니다 여기

은 내가 오류 메시지입니다 (.c 파일 포함)에는정의가 포함되어 있습니다. 10. .c 파일에서 정의를 삭제하면 정상적이어야합니다.

0

오류 자체에 "struct '의 재정의가 표시됩니다. struct data_node를 헤더 파일에 두 번 선언하고 .c 파일에 다른 파일을 두 번 선언했습니다. 그 중 하나를 삭제할 수 있습니다. 헤더 파일을 사용하려면 .c 파일에 헤더 파일을 놓으십시오.