stddef.h 这个头文件定义的类型如下。 size_t:sizeof运算符返回的类型。 定义了两个宏。 NULL:空指针。 它是一个带参数的宏,接受两个参数。第一个参数是 Struct 结构,第二个参数是该结构的一个属性,返回 Struct 起始位置到该属性之间的字节数。 系统为了字节对齐,在a属性后面分配了3个空字节,导致b属性存储在第4个字节,所以和offsetof(struct s, c)分别是4和12。