无法将fpatan汇编器函数的float值返回给c ++程序[重复]
我有一个用AT&T汇编器为Linux中的x64处理器编写的小程序,并使用fpatan函数使用Gnu汇编器对其进行了编译。我知道我可以通过其他方式获得atan值。我不明白如何将在st0-st7寄存器中创建的浮点值移动到C ++程序中。
在此示例中,我可以使用GDB查看结果值。
我的代码如下:
这就是我所期望的。当我尝试在C ++程序中使用它时,问题就来了。首先是功能。
cout<<endl;
当我使用GDB查看正在发生的情况时,结果中的值永远不会更新并保持为0。我想在C ++程序中使用fpatan计算的值,但未成功返回该值。任何帮助将不胜感激。
当我只设置一次时,我的变量会自动更新。为什么会这样?