C/C++ code:
/* dlist.h */
typedef int DlistNodeType;
typedef struct _DListNode DListNode;
typedef struct _DListNode *DList;
/* dlist.c */
struct _DListNode {
DListNodeType data;
DlistNode *next;
DlistNode *prev;
};
当链表按照上面定义后,_DListNode是不是可以不用放在.h文件中,放在.c文件中就可以了?
如果是,为什么?这么做的好处是什么?
如果不是,有什么办法,可以在.h中不出现_DListNode的具体定义?
我调试的时候如果只是把上面的放在dlist.h里面
下面的放在dlist.c里面,编译通不过的。请教各位
友情帮顶,友情帮顶
不出现具体定义那你就放在.c里面吧。然后在.h里面声明下这个类型就好了嘛!
typedef struct _DListNode DListNode;
编译器到这里时,会找_DListNode的声明,结果你的声明在c文件里,编译器没找到,所以报错。
typedef int DlistNodeType;
struct _DListNode {
DListNodeType data;
DlistNode *next;
DlistNode *prev;
};
typedef struct _DListNode DListNode;
typedef struct _DListNode *DList;
这样应该可以,你试一下
没看清楚,不好意思
改成这样子
typedef struct _DListNode {
DListNodeType data;
DlistNode *next;
DlistNode *prev;
有一10*10矩阵,除去第一个点(0,0)和最后一点(9,9),还有八个点为1,其他都为0,要求用二维数组表示。八个点是随机生成的,编写相关程序表示矩阵所有可能情况。
真心求教各位高手,哎!本人太菜了!呵呵!
......