2 个回答

pow函数的原型

double pow(double x, int y);

pow函数的返回值是double类型,占8给字节,10^2 = 100.0
100.0的二进制位表示
00 00 00 00
00 00 59 40
printf("%d",x)只会往后度4个字节,发现全是0,所以输出结果为0


解决办法
printf("%lf",x)往后读8个字节

因为pow返回的是一个double

解决方法

printf("%lf",pow(12,2));
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进