A529231559 发表于 2018-10-23 01:48:39

求助大神

这是编码:
#include <stdio.h>

void main()
{
        double ppow(double x, double y);
        double a,b = 2,c = 3;
        a = ppow(b,c);
        printf("a=%ld\n", a );               
}

doubleppow(double x, double y)
{
        double z=1;
        for( int i=0; i<y;i++)
        {
               
                z = z * x;
        }
        return z;
}

最后输出的结果是0,但是如果把printf函数改成printf("a = %f\n" , a )这样输出的结果是8,问题是为什么长整形的输出结果与浮点型输出的不一样,声明的变量是长整形。。。

塔利班 发表于 2018-10-23 08:06:34

double是浮点型的一种不是长整型,,
页: [1]
查看完整版本: 求助大神