pow ( )【C语言库函数源代码】
【C语言库函数源代码】
【本程序在Dev C++ 4.9.9.2 下编译通过】
double my_pow(double x, double y)
{
register double ret, value;
double r = 1.0;
long p = (long) y;
if (x == 0.0 && y > 0.0)
return 0.0;
if (y == (double) p)
{
if (p == 0)
return 1.0;
if (p < 0)
{
p = -p;
x = 1.0 / x;
}
while (1)
{
if (p & 1)
r *= x;
p >>= 1;
if (p == 0)
return r;
x *= x;
}
}
__asm__(
"fmul %%st(1);"
"fst %%st(1);"
"frndint;/n/t"
"fxch;/n/t"
"fsub %%st(1);/n/t"
"f2xm1;/n/t"
: "=t" (ret), "=u" (value)
: "0" (log2 (x)), "1" (y)
);
ret += 1.0;
__asm__(
"fscale"
: "=t" (ret)
: "0" (ret), "u" (value)
);
return ret;
}
//这是一个求x的y次幂的函数,因为要求是浮点数类型的,所以代码复杂了许多。
//如果仅仅是求整数的x的y次幂,那么就简单了许多。
int main()
{
printf("%f/n",my_pow(0.0,0.0));
printf("%f/n",my_pow(1024.0,0.0));
printf("%f/n",my_pow(2.0,10.0));
printf("%f/n",pow(2.5,12.6));
printf("%f/n",my_pow(2.5,12.6));
system("pause");
return 0;
}
pow ( )【C语言库函数源代码】相关推荐
- c语言hypot函数,hypot ( )【C语言库函数源代码】
[C语言库函数源代码] [本程序在Dev C++ 4.9.9.2 下编译通过] /* hypot函数对于给定的直角三角形的两个直角边, 求其斜边的长度. */ //一般的常规算法: doublemy_ ...
- fabs ( )【C语言库函数源代码】
[C语言库函数源代码] [本程序在Dev C++ 4.9.9.2 下编译通过] float my_fabs01 (float fnumber) { float ret; __asm__ ( " ...
- c语言stricmp函数,stricmp ( )【C语言库函数源代码】
[C语言库函数源代码] [本程序在Dev C++ 4.9.9.2 下编译通过] /* _stricmp/_strcmpi perform a case-insensitive string compa ...
- c语言 strtol,strtol ( )【C语言库函数源代码】
[C语言库函数源代码] [本程序在Dev C++ 4.9.9.2 下编译通过] /* 这个函数会将参数nptr字符串根据参数base来转换成长整型数. 参数base范围从2至36,或0.参数base代 ...
- c语言中strtod用法,strtod ( ) 和 atof ( )【C语言库函数源代码】
[C语言库函数源代码] [本程序在Dev C++ 4.9.9.2 下编译通过] /* 这个函数是把浮点数字符串转换为浮点数的函数. 函数将会跳过字符串中的空格字符和不是'+'.'-'.'.'. 数字的 ...
- c语言atof函数源代码,strtod ( ) 和 atof ( )【C语言库函数源代码】
[C语言库函数源代码] [本程序在Dev C++ 4.9.9.2 下编译通过] /* 这个函数是把浮点数字符串转换为浮点数的函数. 函数将会跳过字符串中的空格字符和不是'+'.'-'.'.'. 数字的 ...
- 语言库函数大全--资料收集整理
语言库函数大全–资料收集 Turbo C 2.0 函数中文说明大全 分类函数,所在函数库为ctype.h int isalpha(int ch) 若ch是字母('A'-'Z','a'-'z')返回非0 ...
- c语言中min函数的作用,C语言库函数
C语言库函数是把自定义函数放到库里,是别人把一些常用到的函数编完放到一个文件里,供程序员使用.程序员用的时候把它所在的文件名用#include<>加到里面就可以了(尖括号内填写文件名),例 ...
- c语言英语库txt,c语言库函数(国外英语资料).doc
c语言库函数(国外英语资料) c语言库函数(国外英语资料) 最佳答案 int isalpha (int ch) 若ch是字母 (a - z, a - z) 返回非0值, 否则返回0 int isaln ...
最新文章
- Android 图片放错位置会拉伸变形
- 细说angular Form addControl方法
- Python全栈之路系列----之-----内置函数和匿名函数lamdba
- AQS理解之二,自己设计一个锁
- c语言选择循环实验报告,C语言程序设计实验报告选择与循环结构程序设计.doc
- oracle12c order by,oracle 数据库中order by 的一些高级用法
- jQuery 自定义选择器
- Unix编程之size_t、ssize_t
- Java学习笔记之设计模式(6)观察者模式
- onload事件_图像onLoad事件+ Internet ExplorerJavaScript问题
- 如何下载谷歌高清卫星地图影像
- VB显示透明FLASH效果
- uni-app 启动页控制
- 你有多久没有看过星星
- iOS 系统方法获取当前位置经纬度
- 求助!微信公众号页面部分手机加载后空白!
- app渗透之Burp抓取app数据包
- 书评《半小时漫画中国史》
- Wireshark使用详解
- java 利用工具包Geotools实现不同坐标系之间坐标转换