linux内核相关知识理解
2008-11-27 22:42
1、#define offsetof(s,m) (size_t)&(((s*)0)->m)其中,s为一个结构体,m是其一个成员,这个宏的作用是返回m在s种的偏移量,解释如下: (s*)0的作用是将0转化一个指向s结构体的指针,使得数字0变成了地址0,进而&((s*)0->m的意思是取得类s种成员变量m的地址,因为基地址为0,因此这个也就是成员m在s种的偏移量 2、typeof:typeof用来获取一个表达式的类型,并用它来定义一个另外一个变量,也就是说用这个表达式的类型定一个变量。当然,如果这个表达式的类型很容易就被看出来也就不用大动干戈了
|