📅  最后修改于: 2023-12-03 15:29:41.415000             🧑  作者: Mango
在C/C++语言中,有三个函数可以用来计算一个数字的绝对值。它们分别是abs(),labs(),llabs()函数。这些函数都在"stdlib.h"头文件中声明。下面我们将逐一介绍这三个函数的使用方法和注意事项。
abs()函数用于计算一个整数的绝对值,其函数原型如下:
int abs(int x);
参数x为要求绝对值的整数,返回值为x的绝对值。需要注意的是,abs()函数的参数类型必须为int类型,如果参数为负数,则返回值仍为正数。
#include <stdlib.h>
#include <stdio.h>
int main() {
int a = -10;
int b = 5;
printf("%d\n", abs(a)); //输出结果: 10
printf("%d\n", abs(b)); //输出结果: 5
return 0;
}
labs()函数用于计算一个长整数的绝对值,其函数原型如下:
long int labs(long int x);
参数x为要求绝对值的长整数,返回值为x的绝对值。需要注意的是,labs()函数的参数类型必须为long int类型,如果参数为负数,则返回值仍为正数。
#include <stdlib.h>
#include <stdio.h>
int main() {
long int a = -2147483648;
long int b = 9223372036854775807;
printf("%ld\n", labs(a)); //输出结果: 2147483648
printf("%ld\n", labs(b)); //输出结果: 9223372036854775807
return 0;
}
llabs()函数用于计算一个长长整数的绝对值,其函数原型如下:
long long int llabs(long long int x);
参数x为要求绝对值的长长整数,返回值为x的绝对值。需要注意的是,llabs()函数的参数类型必须为long long int类型,如果参数为负数,则返回值仍为正数。
#include <stdlib.h>
#include <stdio.h>
int main() {
long long int a = -9223372036854775808;
long long int b = 9000000000000000000;
printf("%lld\n", llabs(a)); //输出结果: 9223372036854775808
printf("%lld\n", llabs(b)); //输出结果: 9000000000000000000
return 0;
}
总之,C/C++中的abs(),labs(),llabs()函数是非常方便的计算绝对值的工具,开发者可以根据需要进行选择使用。