小编Ben*_*ish的帖子

C 中 linux 上的奇怪 cbrt() 结果

为什么cbrt()函数的这两个返回值不同?

#include <stdio.h>
#include <stdlib.h>
#include <math.h>

int main() {
    double nb = 56623104;
    double v1 = cbrt(nb);
    printf("v1 -> %.15f\n",v1);

    double v2 = cbrt((double) 56623104);
    printf("v2 -> %.15f\n",v2);
}
Run Code Online (Sandbox Code Playgroud)

编译:

gcc toto.c -o toto -lm && ./toto

结果 :

v1 -> 384.000000000000057
v2 -> 384.000000000000000

c linux double

5
推荐指数
1
解决办法
102
查看次数

标签 统计

c ×1

double ×1

linux ×1