//list.h file
typedef struct _lnode{
struct _lnode *next;
size_t row;
size_t column;
short data;
}lnode;
typedef struct _llist{
struct _lnode *head;
size_t size;
}llist;
//matrix.h file
typedef struct _matrix{
size_t width;
size_t height;
size_t k;
int **data;
}matrix;
//smatrix.h file
#include "list.h"
#include "matrix.h"
typedef struct _smatrix{
size_t width;
size_t height;
size_t k;
llist data;
}smatrix;
smatrix* make_smatrix(matrix *m);
smatrix.h文件包括list.h文件和matrix.h文件。如果我包括smatrix.h文件的頭文件,然後我得到.h文件中的重定義錯誤
redefinition of 'lnode'. redefinition of '_llist' and redefinition of '_matrix' errors.
如果我把這些文件赫德從我們的文件smatrix.h那麼錯誤走開了,但抱怨的函數參數矩陣類型。我想調用在smatrix.c文件中的list.h和matrix.h文件中定義的函數。我該怎麼做?在此先感謝..
_list.h_是這樣的嗎? – codereviewanskquestions 2011-03-25 08:27:24
@LCYSoft編輯 – 2011-03-25 08:29:33
謝謝loooot! – codereviewanskquestions 2011-03-25 08:42:50