方法一
#include <stdlib.h>
#include <math.h>
int main(void)
{
int num = -18;
printf("num:%d, absolute value:%d\n",num,abs(num));
return 0;
}
方法二
在32位机上若不用系统库函数及条件语句可以使用以下函数实现取绝对值:
#include <stdio.h>
int myabs(int n)
{
return n*((n>>31<<1)+1);
}
int main()
{
int absValue = myabs(-11);
printf("ABS Value: %d\n", absValue);
return 0;
}
方法三
在单片机编程中,常用用法
int32_t value = -13;
uint32_t absValue = (value < 0) ? (-value) : value; // 取绝对值