gpt4 book ai didi

c - 从 gcc 中的内联汇编引用全局变量

转载 作者:行者123 更新时间:2023-11-30 15:52:08 31 4
gpt4 key购买 nike

我遇到链接器生成 undefined reference 错误的问题来自内联汇编代码。

int global_var = 0;
void myfunc()
{
asm(".intel_syntax noprefix\n");
asm("lea eax, global_var\n");
}

我正在使用 GCC 3.4.2 使用 -masm=intel 进行编译,没有任何优化或任何其他操作如果有人也遇到这种不便,请提供帮助。

最佳答案

基本上,这是一个名称修改问题 - 也就是说,编译器在编译阶段修改(更改)变量和函数的名称。在本例中,“global_var”更改为“_global_var”

如果您更改函数的第二行以使其访问“_global_var”,则它可以正常编译。 (测试GCC 4.7.1)

关于c - 从 gcc 中的内联汇编引用全局变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14676222/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com