摘要: 最近在学习linux下的内核链表,发现linux的内核链表不同于传统的链表,于是打算把这套内核链表移植出来,方便以后使用,不过在移植offsetof(TYPE, MEMBER)这个宏的时候遇到了很多之前不懂的问题,经过几天的努力终于把offsetof这个宏弄的明明白白了。 正确源代码: 1 #... 阅读全文
posted @ 2015-03-22 11:36 Fight_for_a_sweet 阅读(607) 评论(0) 推荐(0) 编辑
摘要: #define OFFSETOF(type, field) ((size_t)&(((type *)0)->field))(type *)0:把0地址当成type类型的指针。((type *)0)->field:对应域的变量。&((type *)0)->field:取该变量的地址,其实就等于该域相对... 阅读全文
posted @ 2015-03-22 10:40 Fight_for_a_sweet 阅读(701) 评论(0) 推荐(0) 编辑
摘要: VC中下面几个结构体大小分别是多少呢? 1 struct MyStruct 2 { 3 double m4; 4 char m1; 5 int m3; 6 }; 7 8 struct MyStruct { 9 char m1;10 double m4;11... 阅读全文
posted @ 2015-03-22 10:38 Fight_for_a_sweet 阅读(2437) 评论(0) 推荐(0) 编辑