【问题标题】:What do these symbols mean from a programming standpoint?从编程的角度来看,这些符号是什么意思?
【发布时间】:2015-04-01 18:56:56
【问题描述】:

我必须创建一个 C 文件,该文件在编译时返回来自 nm 的符号输出,类型为 ABV。我已经阅读了nm 的手册页并在线搜索,但都没有帮助我弄清楚这些类型的符号是如何创建的。从编程的角度来看,这些符号是什么意思?还有我应该看的好的参考资料吗?

【问题讨论】:

  • 听起来像家庭作业?
  • 手册页非常清楚它们是什么,但解释这些概念是一个相当大的话题。
  • 几周前我们没有这个问题吗?
  • 这是家庭作业,但这是额外的功劳,我不是在找人帮我做。我只需要指导,因为我们没有得到任何指导。

标签: c assembly linker nm


【解决方案1】:

在这 3 个中,我认为您只能使用标准 C 代码创建 B。那只是一个初始化为零的全局变量,即。 int foo = 0;。要创建绝对对象或弱对象,您必须使用特定于编译器的扩展。

使用 gcc 的弱符号可以声明为:int bar __attribute__ ((weak));

我现在想不出声明绝对符号的方法。

【讨论】:

  • 通过链接描述文件创建绝对符号有点容易。 C 没有这样的资源。
猜你喜欢
  • 1970-01-01
  • 2016-10-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多