sqrt()问题
为什么我sqrt()里是一个定义过后的变量无法编译运行如果是常量就可以了 不上代码就在这空说谁知道咋回事啊 https://zh.cppreference.com/w/cpp/numeric/math/sqrt
鸽只能帮你到这里了 可以啊。
#include<stdio.h>
#include<math.h>
int main() {
printf("Round 1\n");
printf("sqrt(2)=%.16f\n",sqrt(2));
const int a=2;
printf("let a=2,sqrt(a)=%.16f\n",sqrt(a));
int b=2;
printf("var b=2,sqrt(b)=%.16f\n",sqrt(b));
printf("Round 2\n");
printf("sqrt(2.0)=%.16f\n",sqrt(2.0));
const float c=2.0;
printf("let c=2.0,sqrt(a)=%.16f\n",sqrt(c));
float d=2.0;
printf("var d=2.0,sqrt(b)=%.16f\n",sqrt(d));
return 0;
}
Round 1
sqrt(2)=1.4142135623730951
let a=2,sqrt(a)=1.4142135623730951
var b=2,sqrt(b)=1.4142135623730951
Round 2
sqrt(2.0)=1.4142135623730951
let c=2.0,sqrt(a)=1.4142135623730951
var d=2.0,sqrt(b)=1.4142135623730951 本帖最后由 le1314 于 2019-6-15 15:55 编辑
{:5_102:} ,上代码 gcc test.c -lm && ./a.out要把-lm加在test.c后面sqrt才能运行变量
我之前一直是gcc -lm test.c &&./a.out sqrt只能运行常量
谢谢大家的回复了 我自己去琢磨半天把帖子这事给忘了
页:
[1]