的扩展功能
分类:
GCC 的__attribute__扩展功能
摘要:
在学习 内核代码及一些开源软件的源码,经常可以看到有关的相关使用。本文结合
自己的学习经历,较为详细的介绍了相关语法及其使用。
声明:
此文为原创,欢迎转载,转载请保留如下信息
作者:聂飞()北京中关村
联系方式: !"(欢迎与作者交流)
初次发布时间:#
不经本人同意,不得用语商
业或赢利性质目的,否则,作者有权追究相关责任!
$% 的一大特色(却不被初学者所知)就是机制。可以设置函数属性
(& !')、变量属性((')和类型属性()*+')。
书写特征是:前后都有两个下划线,并切后面会紧跟一对原括弧,括弧里面
是相应的参数。
语法格式为:
其位置约束为:
放于声明的尾部“;”之前。
函数属性(Function Attribute)
函数属性可以帮助开发者把一些特性添加到函数声明中,从而可以使编译器在错误检查方面的功能更强大。
机制也很容易同非 $% 应用程序做到兼容之功效。
$% 需要使用–, 编译器来击活该功能,这是控制警告信息的一个很好的方式。下面介绍几个常
见的属性参数。
__attribute__ format
该属性可以给被声明的函数加上类似 + 或者 的特征,它可以使编译器检查函数
声明和函数实际调用参数之间的格式化字符串是否匹配。该功能十分有用,尤其是处理一些很难发现的
-。
!" 的语法格式为:
!" .*+/-0/1! . 2
!"属性告诉编译器,按照 +/ /" 或 "! 的参数表格式规则对该函数的参数进
行检查。“ .*+3指定是哪种风格;“-03指定传入函数的第几个参数是格式化字符串;
评论1