Linux内核中常用的C语言技巧

原文英文,约500词,阅读约需2分钟。发表于:

Linux内核一般采用GCC编译器,它不仅支持ANSI C,还支持GNU C。在Linux内核的开发过程中,许多地方都充分利用了GNU C语言的扩展功能,比如typeof、attribute、__aligned、__builtin_等等,这些都是GNU C语言的独特特性。

Linux内核使用GCC编译器,充分利用GNU C语言的扩展功能。GNU C语言的特性包括typeof、attribute、__aligned、__builtin_等。使用typeof可以比较两个数的大小并返回较大的值。零长数组可以实现可变长度的结构体。GNU C语言支持指定一个case的范围作为一个标签。可以通过指定索引或结构体成员名来初始化。宏可以接受可变数目的参数。函数属性可以进行特定优化和代码检查。变量属性可以对变量或结构体成员进行属性设置。内建函数以_builtin_为前缀。UL后缀用于将int类型数据转换为unsigned long类型。

相关推荐 去reddit讨论