我有一个双倍的:
double mydouble = 10;
我要10 ^ 12,所以10 * 10 * 10 * 10 * 10 * 10 * 10 * 10 * 10 * 10 * 10 * 10.我试过
double newDouble = pow(10, 12);
并在NSLog中返回我:pow=-1.991886
没有多大意义......我认为鲍勃不是我的朋友吗?
答案 0 :(得分:12)
尝试pow(10.0,12.0)。更好的是,#include math.h
。
澄清:如果不包含math.h,编译器会假定pow()
返回一个整数。包括math.h会带来像
double pow(double, double);
因此编译器可以理解如何处理参数和返回值。
答案 1 :(得分:5)
如果没有:
,我甚至无法编译程序#include <math.h>
当使用这样的数学函数时,你应该总是包含math.h并确保你正在调用正确的pow函数。谁知道其他战功能可能是什么......它可以代表“动力车”哈哈
答案 2 :(得分:4)
答案 3 :(得分:0)
这是pow的正确语法,你传递给NSLog(...)的格式字符串是什么?
答案 4 :(得分:0)
你是否尝试投射到双倍:
NSLog(@"(double)pow(10, 12) = %lf", (double)pow(10, 12));