编译器功能__attribute__介绍和官方资料来源

news/2025/2/18 18:36:15/

1、__attribute__简介

__attribute__不是C语言本身的关键字,而是属于编译器扩展的C语言的功能,C Extensions (Using the GNU Compiler Collection (GCC))中可以找到关于attribute的几个章节,Function Attributes【函数属性】、Variable Attributes【变量属性】、Type Attributes【类型属性】、Label Attributes【标签属性】、Enumerator Attributes【枚举属性】、Statement Attributes【语句属性】、Attribute Syntax【属性语法】;

2、语法

2.1、格式:__attribute__((属性列表))

__attribute__((属性列表)) ,属性列表的几种情况:

  • 空属性,空属性会被忽略;
  • 一个属性名称;
  • 一个属性名称后面跟着一个括号括起来的参数列表。

注1:属性列表外有两对小括号;

注2:属性列表意味着可以写多个属性,属性中间用逗号分开,具体的属性使用说明从链接里找。

2.2、例子

__attribute__((section(x)))
__attribute__((used))
__attribute__((used,section(x)))

3、常用属性

参考这个常见函数属性链接:Common Function Attributes (Using the GNU Compiler Collection (GCC));

3.1、aligned

3.2、section

3.3、unused、used


3.4、weak


http://www.ppmy.cn/news/1290413.html

相关文章

专题一_双指针(一)

文章目录 283.移动零题目解析讲解算法原理扩展编写代码 1089.复习零题目解析讲解算法原理编写代码 202.快乐数题目解析讲解算法原理证明编写代码 11.盛最多水的容器题目解析讲解算法原理暴力解法优秀的解法时间复杂度分析 编写代码 283.移动零 题目链接 题目解析 题目还是比较…

Spring Data JPA从入门到精通--对查询结果的扩展

如果 我们想仅仅返回实体中的几个字段,应该怎么做呢? 基于projections的思路,其实是比较容易的。 我们只需要声明一个 接口,包含要返回的属性的方法即可,例如: Repository里面的写法如下,直接…

​如何把图片里背景的路人P掉?教你四种方法消除路人

在日常生活中,我们经常会遇到需要将图片中背景的路人P掉的情况。有时候,这些路人会破坏图片的整体美感,或者我们只想要图片中的某些元素,而路人的出现会分散注意力。那么,如何才能有效地将图片中的背景路人P掉呢&#…

UR5机器人的旋转向量转换到四元数,再从四元数转换到旋转向量python代码

能够通过接口获得UR5机器人末端在基坐标系下的位姿,姿态表示方法是用旋转向量表示的,一般会涉及到四元数和旋转向量之间的转换。 1、方法一 import numpy as np from pytransform3d import rotations as pr import copy # 输入旋转向量 quaternion2 n…

如何自动生成 API 接口文档 - 一份详细指南

本篇文章详细教你如何使用 Apifox 的 IDEA 插件实现自动生成接口代码。好处简单总结有以下几点: 自动生成接口文档: 不用手写,一键点击就可以自动生成文档,当有更新时,点击一下就可以自动同步接口文档;代码…

前端八股文(CSS篇)一

目录 1.px和em的区别 2.介绍下BFC及其应用 3.介绍下粘性布局(sticky) 4.清除浮动的方法 5.如何用css或js实现多行文本溢出省略效果,考虑兼容 6.如何触发重排和重绘? 7.重绘与重排的区别? 8.说说两种盒模型以及区…

【Python】ubuntu python>3.9编译安装,及多个Python版本并存的使用方法

【Python】ubuntu python3.9编译安装,及多个Python版本并存的使用方法 1. 安装依赖2. 编译与安装2.1 依赖与源获取2.2 配置2.3 编译2.4 安装2.5 建立软连接 链接动态库 3. 多版本兼容 1. 安装依赖 更新系统软件 在正式开始之前,建议首先检查系统软件是否…

Linux 485驱动通信异常

背景 前段时间接到一个项目,要求用主控用485和MCU通信。将代码调试好之后,验证没问题就发给测试了。测试测的也没问题。 但是,到设备量产时,发现有几台设备功能异常。将设备拿回来排查,发现是485通信有问题&#xff…