小白求助错误 obj - 1error(s)
#include <stdio.h>#include <math.h>
void main()
{
double x, s;
printf("input number:\n");
scanf("%1f", &x);
s = sin(x);
printf("sin of %1f is %1f\n", x, s);
}
hello world.obj - 1 error(s), 0 warning(s)
报错了 这是哪里出了问题 请大神帮忙看下
我编译没出问题,你确定你使用了 -lm 命令编译?
https://xxx.ilovefishc.com/forum/201512/19/031127foc19oz59cq199m1.png zltzlt 发表于 2019-12-7 18:55
我编译没出问题,你确定你使用了 -lm 命令编译?
我用的是WIN10系统 新手小白一名 -lm是啥意思... wangyan361 发表于 2019-12-7 19:13
我用的是WIN10系统 新手小白一名 -lm是啥意思...
先不管是什么意思,如果你的代码引用了 math 库,编译时就要加上 -lm 选项。 本帖最后由 jackz007 于 2019-12-7 19:28 编辑
scanf("%1f", &x);
s = sin(x);
printf("sin of %1f is %1f\n", x, s);
目测红色字符是数字1,必须改成字母 l(小写的 L)。
编译加 -lm 选项的意思是,本程序使用系统提供的 libm.so 动态库,类似于 windows 的 dll 文件,这样,程序中使用的数学函数 sin() 才会得到 支持,否则,这个函数会没有着落。 zltzlt 发表于 2019-12-7 19:16
先不管是什么意思,如果你的代码引用了 math 库,编译时就要加上 -lm 选项。
怎么加? 方便加个QQ教教我吗 wangyan361 发表于 2019-12-7 19:19
怎么加? 方便加个QQ教教我吗
不方便。其实直接 gcc -lm test.c 就可以编译成 test.exe 可执行文件。 jackz007 发表于 2019-12-7 19:17
scanf("%1f", &x);
s = sin(x);
printf("sin of %1f is %1f\n", x, s);
改过了还是报错 你用的什么?Dev-C++? _2_ 发表于 2019-12-7 19:40
你用的什么?Dev-C++?
Visual C++ 6.0 wangyan361 发表于 2019-12-7 19:22
改过了还是报错
命令行切换到程序目录,执行 gcc -lm test.c(test.c 是程序文件名)。 wangyan361 发表于 2019-12-7 19:46
Visual C++ 6.0
不建议使用 VC++ 6.0。原因
建议使用 Dev-C++。 zltzlt 发表于 2019-12-7 19:16
先不管是什么意思,如果你的代码引用了 math 库,编译时就要加上 -lm 选项。
你什么时候装的虚拟机?! 本帖最后由 zltzlt 于 2019-12-7 20:08 编辑
_2_ 发表于 2019-12-7 19:58
你什么时候装的虚拟机?!
这是小甲鱼的图片……
页:
[1]