abs()、fabs()和fabsf()区别

1.abs()、fabs()和fabsf()区别 因为C++ 允许重载 可以根据类型自行选择,所以有的时候看源码是最好的老师
 abs(类型 i);                   // 
inline double __CRTDECL abs(_In_ double _X)
        {return (fabs(_X)); }

inline long abs(long _X)
    {
        return labs(_X);
    }
inline long long abs(long long _X)
    {
        return llabs(_X);
}
inline float __CRTDECL abs(_In_ float _X)
        {return (fabsf(_X)); }

 fabs(类型 i);  //处理 类型的取绝对值
inline float __CRTDECL fabs(_In_ float _X)
        {return (fabsf(_X)); }

inline long double __CRTDECL fabs(_In_ long double _X)
        {return (fabsl(_X)); }


fabsf(类型 i);             //处理float类型的取绝对值
inline float fabsf(_In_ float _X)
        {return ((float)fabs((double)_X)); }

猜你喜欢

转载自blog.csdn.net/hanshanbuleng/article/details/79998870
ABS