C语言 attribute的问题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C语言 attribute的问题相关的知识,希望对你有一定的参考价值。

1)#define __init_call __attribute__ ((unused,__section__ (".initcall.init"))) “__initcall_start”与声请的节名有关是吗,是不是 取节名initcall之前加上"__",后面加上“_start”表示指向节首地址 2)声请的节名 有要求吗 比如一定要加上“.exit”,“.init”,".text"和“.data”等名 3)attribute是如何通过地址去访问的呢 比如 我设置这样一个例子 struct aaa int a; int b; int *c; ; #define Struct_Section __attribute__ ((unused,section(".test.init"))) #define bbb(x, y, z) \ aaa bbb_##z Struct_Section = x, y, z 求解,谢谢

参考技术A 对于
你的问题
不太明白。
#define
__init_call
__attribute__
((unused,__section__
(".initcall.init
")))
参考GCC说明,意思是说所有以__init_call
前缀
定义

函数
在链接
过程
中都放到名字为.initcall.init的段(section)里面。也就是说,如果一个函数冠以__init_call,那么它在编译链接的时候就会放到.initcall.init这个段里面。

C/C++系列C语言中__attribute__机制的使用

DATE: 2021.10.25


1、介绍

GNU C 的一大特色就是__attribute__ 机制。attribute 可以设置函数属性(Function Attribute )、变量属性(Variable Attribute )和类型属性(Type Attribute )。

_attribute_ 语法格式为:__attribute__ ((attribute-list))

2、用法

2.1、设置函数属性

aligned: 指定对象的对齐格式(以字节为单位)

struct pStruct 
   
	short a

以上是关于C语言 attribute的问题的主要内容,如果未能解决你的问题,请参考以下文章

prop()和attr()

Android Attr -- Understanding Android Custom Attributes

ecshop 属性表(attribute)商品属性表(goods_attr)货品表(prduct) 商品数量的联系

jQuery中attr和prop方法的区别

JS中attr和prop属性的区别

jQuery属性-attr()方法