C/C++ pow函数

ChatGPT 3.5 国内中文镜像站免费使用啦

零基础 C/C++ 学习路线推荐 : C/C++ 学习目录 >> C 语言基础入门

零基础 C/C++ 学习路线推荐 : C/C++ 学习目录 >> C++ 面向对象

零基础 C/C++ 学习路线推荐 : C/C++ 学习目录 >> C++ 设计模式

零基础 C/C++ 学习路线推荐 : C/C++ 学习目录 >> C++ STL

零基础 C/C++ 学习路线推荐 : C/C++ 学习目录 >> C/C++ 技术杂谈

零基础 C/C++ 学习路线推荐 : C/C++ 学习目录 >> C/C++ 常用函数


一.pow函数简介

C 语言pow 函数用来求 x 的 y 次幂(次方),即:xy ;其中 xy 及函数值都是 double 类型 ,声明如下:

#include <math.h>
/*
*描述:用来计算以x为底的y次方值
*
*参数:
*   [IN] x:浮点数
*   [IN] y:浮点数
*
*   返回值:返回以x为底的y次方值
*/
double pow(double x, double y);

pow 函数用来计算以 x 为底的 y 次方值,然后将结果返回,设返回值为 xy;


1.可能导致错误的情况

a.如果底数 x 为负数并且指数 y 不是整数,将会导致 domain error 错误;

b.如果底数 x 和指数 y 都是 0,可能会导致 domain error 错误,也可能没有;这跟库的实现有关;

c.如果底数 x 是 0,指数 y 是负数,可能会导致 domain error 或 pole error 错误,也可能没有;

d.如果返回值 ret 太大或者太小,将会导致 range error 错误。


2.错误代码

a.如果发生 domain error 错误,那么全局变量 errno 将被设置为 EDOM

b.如果发生 pole error 或 range error 错误,那么全局变量 errno 将被设置为 ERANGE


二.pow函数实战

使用 pow 函数求 4 的 6 次方,其代码如下:

/******************************************************************************************/
//@Author:猿说编程
//@Blog(个人博客地址): www.codersrc.com
//@File:C/C++ pow函数
//@Time:2021/10/29 08:00
//@Motto:不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
/******************************************************************************************/


#include <stdio.h>
#include <math.h>
int main() {
    double x = 4, y = 6;  //为变量赋初值
    //等价 result = x * x * x * x * x * x; 
    //等价 result = 4 * 4 * 4 * 4 * 4 * 4 = 4096;
    double result = pow(x, y);  //求a的b次方
    printf("%lf\n", result);    //4096.000000
    return 0;
}

三.猜你喜欢

  1. C语言 数组下标越界和内存溢出区别
  2. C语言 使用指针遍历数组
  3. C语言 指针和数组区别
  4. C语言 指针数组和数组指针区别
  5. C语言 野指针
  6. C语言 函数值传递和址传递
  7. C语言 函数不定长参数
  8. C语言 函数指针
  9. C语言 指针函数
  10. C语言 回调函数 callback
  11. C语言 #pragma once
  12. C语言 #include <> 与 #include “” 区别
  13. C语言 const 修饰函数参数
  14. C语言 const 和 define 区别
  15. C语言 #运算符
  16. C语言 ##运算符
  17. C语言 __VA_ARGS__
  18. C语言 ##__VA_ARGS__
  19. C语言 函数不定长参数 ##__VA_ARGS__经典案例
  20. C语言 va_start / va_end / va_arg 自定义 printf 函数
  21. C语言 main 函数
  22. C语言 main 函数参数 main(int argc, char *argv[])
  23. C语言 局部变量
  24. C语言 全局变量
  25. C语言 全局变量和局部变量区别
  26. C语言 static
  27. C语言 extern
  28. C/C++ Unicode 和多字节区别
  29. C/C++ wprintf 输出中文乱码
  30. C/C++ char 和 wchar_t 相互转换
  31. C/C++ pow函数

ChatGPT 3.5 国内中文镜像站免费使用啦
© 版权声明
THE END
喜欢就支持一下吧
点赞1 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容