编译器(Ex: GCC, clang, VC++...)+目标环境(跟开发平台不同的话需列出)
GCC
额外使用到的函数库(Library Used): (Ex: OpenGL, ...)
无
问题(Question):
在linux中,他的双向链结串行因为要可以储存不同的资料型态,所以他的链结串行和资
料是分开来的,要使用时在将资料加到链结串行上
例如这样
struct list_head {
struct list_head *next, *prev;
};
要使用时再这样
struct num {
int number; //data
struct list_head list;
};
但是这样要如何实作?
像是如果我想要新增一个节点
但list的资料型态是list_head,意思是我只能新增一个list_head的节点,而这个结点无
法储存资料
如果我新增一个num型态的节点,但是我的list并不能指向一个num型态的节点
而我新增了一个num型态的节点,我用list_head的指标去指向这个num型态的节点,我原
本预期应该是错误的(可能直接编译错误或是在执行阶段当掉),但居然成功运作了
但我完全不知道为何会这样
喂入的资料(Input):
无
程式码(Code):(请善用置底文网页, 记得排版,禁止使用图档)
https://ideone.com/dQZkIq