C++中绝对值的运算

首先,输入-42333380005结果取出来的绝对值却是616292955。

开始我以为是long型的取值范围有问题,就把long型全部改为long long型的了,结果还是一样,就觉得绝对值这个函数有问题,因为是进到abs这个函数后出来的数给变了,所以一查就出来:

c语言中,通过相应的函数得到x的绝对值,因为数据数据类型不同,相应的函数不同。

整型类型变量(整数)取绝对值:

int abs( int x );

long int labs( long x );

long long int llabs( long long x );

浮点类型变量(小数)取绝对值:

double( double x );  

float fabsf(float x);

long double fabsl( long double x) ;

相关头文件:

#include <stdlib.h>

#include <math.h>

虽然是个小知识点,但一定要谨记好咯。

原文地址:https://www.cnblogs.com/cjn123/p/10665952.html