c - 从汇编程序获取外部

标签 c gcc assembly

我有以下链接到我的 cpp 项目的 asm 代码:​​

Some_Variable EQU 0x0F00F0F0
...

现在我想从 C 代码访问 Some_Variable。我对 extern uint32_t Some_Variable 并不幸运。你究竟是怎么做到的?这可能吗?

最佳答案

实现此目的的一种方法确实是使用分配有常量值的变量。不确定您的汇编程序,但对于 nasm,您可以执行以下操作:

Some_Variable equ 0x0F00F0F0

global _somevar
_somevar dd Some_Variable

然后在 C 中:

extern int somevar

大多数汇编程序都有相似的关键字,所以我希望这对您有所帮助。

关于c - 从汇编程序获取外部,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23514867/

相关文章:

c - typedef void(* something)(someclass* something) - 这是什么意思?从未见过这样的 typedef 用法

c++ - binary_log_types.h : No such file or directory

c - MPI_File_read_at 逐行读取

C++编译错误?

assembly - 将段从 Ring0(内核)更改为 Ring3(用户)会导致段错误

核心转储到超过 26 个字符的 realloc 文本 c

linux - 从 Ubuntu 终端使用不同的命令行参数循环

C++ 链接器 - 缺少重复符号

assembly - 将常量值添加到 x86 中的 xmm 寄存器

assembly - 这些寻址模式有什么区别...?