__adjust.c
来自「KPIT GNU Tools is a set of GNU developme」· C语言 代码 · 共 45 行
C
45 行
/* * return (*acc) scaled by 10**dexp. */#include <_ansi.h>#include <reent.h>#include "std.h"#define abs(x) (((x) < 0) ? -(x) : (x))double_DEFUN (__adjust, (ptr, acc, dexp, sign), struct _reent *ptr _AND double *acc _AND int dexp _AND int sign) /* *acc the 64 bit accumulator */ /* dexp decimal exponent */ /* sign sign flag */{ double r; if (dexp > MAXE) { ptr->_errno = ERANGE; return (sign) ? -HUGE_VAL : HUGE_VAL; } else if (dexp < MINE) { ptr->_errno = ERANGE; return 0.0; } r = *acc; if (sign) r = -r; if (dexp == 0) return r; if (dexp < 0) return r / __exp10 (abs (dexp)); else return r * __exp10 (dexp);}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?