当前位置:  技术问答>linux和unix

关于_attribute_的用法咨询

    来源: 互联网  发布时间:2017-04-19

    本文导语:  在代码中看到如下定义: #define __exit          __attribute__ ((unused, __section__(".text.exit"))) unused是个枚举变量 typedef enum { unused, mode, motion, report } command_types; 这个attribute的用法是什么,该怎么来表示。和下面...

在代码中看到如下定义:
#define __exit          __attribute__ ((unused, __section__(".text.exit")))

unused是个枚举变量
typedef enum {
unused, mode, motion, report
} command_types;

这个attribute的用法是什么,该怎么来表示。和下面这种用法有什么区别:
__attribute__ ((__section__ (".initcall" levle ".init"))),输入段的名称由level决定,如果level="1",则输入段是.initcall1.init,如果level="3s",则输入段是.initcall3s.init。

|
#define __exit          __attribute__ ((unused, __section__(".text.exit")))

这里的unused不是你说的下面枚举里的值,而是表示__exit修饰的函数可能不会被调用,但是让gcc不要产生warning。

__attribute__是可以跟着attribute list的,参考下GCC的手册看看吧,
http://gcc.gnu.org/onlinedocs/gcc-4.8.1/gcc/Function-Attributes.html#Function-Attributes
6.30 Declaring Attributes of Functions里对函数的attribute有比较详细的说明。

http://gcc.gnu.org/onlinedocs/gcc-4.8.1/gcc/Attribute-Syntax.html#Attribute-Syntax
6.31里有对__attribute__语法的说明。

    
 
 

您可能感兴趣的文章:

  • C#属性(Attribute)用法实例解析
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • java命名空间javax.management类attribute的类成员方法: attribute定义及介绍
  • VIM显示"attribute's"这个单词为错误?
  • java命名空间java.util.jar类attributes的类成员方法: attributes定义及介绍
  • Commons Attributes
  • java命名空间javax.print.attribute接口attribute的类成员方法: getcategory定义及介绍
  • 高手请进,下面的代码中的__attribute_used__有什么作用???
  • java命名空间javax.print.attribute接口attribute的类成员方法: getname定义及介绍
  • 请问Attribute和Property是否都翻译为属性?
  • java命名空间javax.xml.stream接口xmlstreamconstants成员方法: attribute定义参考
  • jquery iis7站长之家
  • java命名空间javax.management类attribute的类成员方法: equals定义及介绍
  • 请问UNIX的man手册中ATTRIBUTES部分是什么含义?
  • java命名空间java.util.jar类attributes的类成员方法: map定义及介绍
  • expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘typedef'
  • java命名空间javax.management类attribute的类成员方法: getvalue定义及介绍
  • 请问C语言中__ATTRIBUTE_PACK__做什么用?
  • java命名空间javax.print.attribute类hashattributeset的类成员方法: hashattributeset定义及介绍
  • ubuntu不支持__attribute__((packed))怎么办
  • java命名空间javax.print.attribute类hashprintserviceattributeset的类成员方法: hashprintserviceattributeset定义及介绍
  • error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘. '
  • java命名空间javax.print.attribute接口attributeset的类成员方法: containsvalue定义及介绍
  • error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘{’ token


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,