Gcc
dayancn
这个作者很懒,什么都没留下…
展开
-
介绍四种GCC内置位运算函数
介绍四种GCC内置位运算函数int __builtin_ffs (unsigned int x)返回x的最后一位1的是从后向前第几位,比如7368(1110011001000)返回4。int __builtin_clz (unsigned int x)返回前导的0的个数。int __builtin_ctz (unsigned int x)返回后面的0个个数,和_转载 2016-03-13 10:19:41 · 894 阅读 · 0 评论 -
__attribute__ 你知多少?
__attribute__ 你知多少?GNU C 的一大特色就是__attribute__ 机制。__attribute__ 可以设置函数属性(Function Attribute )、变量属性(Variable Attribute )和类型属性(Type Attribute )。__attribute__ 书写特征是:__attribute__ 前后都有两个下划线,并切后面会紧跟转载 2016-04-08 21:15:05 · 2624 阅读 · 0 评论 -
__attribute__((regparm(n)))
__attribute__((regparm(n)))GCC中可以使用__attribute__((regparm(n)))指定最多可以使用n个寄存器(eax, edx, ecx)传递参数,n的范围是0~3,超过n时则将参数压入栈中(n=0表示不用寄存器传递参数)。看下面例子,函数p1约定不使用寄存器传递参数,尽管只有1个参数,仍然将参数压入栈中。函数p2约定最转载 2016-04-10 11:28:59 · 368 阅读 · 0 评论 -
导出toolchain中的定义的特殊宏
导出toolchain中的定义的特殊宏:gcc -E -dM -转载 2017-01-19 09:24:14 · 290 阅读 · 0 评论 -
variable length arrays
C中的Variable length arrays (变长数组)2007-07-03 13:37 昨天老钱傻乎乎的问了个变长数组的问题,弄得大家莫名惊诧。老钱这孩子就是喜欢弄一些幼稚无比又莫名其妙的东东来折磨大家。bs之。 Variable length arrays 是C99的特性,而不是 C++98 的,关于c99标准的变长数组, 在标准的6.7.5.2 Arr转载 2017-03-21 19:03:00 · 3543 阅读 · 1 评论