我正在尝试在 64 位机器上编译以下简单程序:
#include <cstdio>
int main() {
float a,b,c;
a = 10.5;
b = 20.6;
c = a + b;
printf("%d \n", c);
return 0;
}
我使用以下控制台命令编译它:
g++ -m32 file.cpp
当我像这样执行 a.out 文件时:
./a.out-m32
我得到的结果是这样的:
-1610612736
这是怎么回事?我究竟做错了什么?在没有 -m32 标志的情况下编译时,我得到了虚假结果。 Gcc 的行为方式相同。
最佳答案
您的格式说明符错误。应该是
printf("%f \n", c);
关于c++ - 在 Linux 上使用控制台编译 C++ 时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20244060/