QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 2774|回复: 6

linux大侠们:请问Linux2.4版阅读中的一个问题。

[复制链接]
发表于 2006-5-18 10:10:28 | 显示全部楼层 |阅读模式
请问这句怎么理解,能详细讲一下吗,普通的c语言我没见过这样使用的。谢谢!#define   _init  __attribute__ ((__section__ (".text.init")))
 楼主| 发表于 2006-5-23 08:50:45 | 显示全部楼层
相比这个论坛是国内比较专业的了,唉,失望。
回复

使用道具 举报

 楼主| 发表于 2006-5-23 08:59:19 | 显示全部楼层
难道所谓的读源码都是囫囵吞枣不成,继续失望!!
回复

使用道具 举报

发表于 2006-6-15 12:41:20 | 显示全部楼层
这里是把 _init 定义成一个.text.init的段,,应该先看看GCC手册.
回复

使用道具 举报

 楼主| 发表于 2006-6-30 11:44:00 | 显示全部楼层
谢了,知道是gcc了
回复

使用道具 举报

发表于 2006-7-1 07:47:41 | 显示全部楼层
应该是链接工具 LD 的标识吧,这句话的意思是这个函数链接后放在 init 段,具体定义在 *.lds 文件中。根据这些 lds 脚本,LD 会进行一些特殊处理。
回复

使用道具 举报

发表于 2006-7-8 19:20:00 | 显示全部楼层
__attribute__和__section__都是修饰符,其实就是定义_init为后面那个字符串
,
***************************************
比如这个
#define ASMCODING(x) __asm__ __volatile__(x)
#define PPP(x) printf("%d\n",x);
#define PF printf(" ")
然后使用PF 好像不好用
***************************************
那个主要是用修饰符来对定义加一些限制吧
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-11-25 12:16 , Processed in 0.056006 second(s), 16 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表