在 C 语言中,将负数转换为正数可以使用以下方法:使用绝对值函数 abs()通过位运算符 ~ 取反

用 C 语言将负数转换为正数
在 C 语言中,将负数转换为正数非常简单,可以通过以下方法实现:
1. 使用绝对值函数 abs()
abs() 函数可以返回一个数的绝对值,即不带有符号(正负号)。对于负数,abs() 函数会将其转换为正数。
立即学习“C语言免费学习笔记(深入)”;
示例:
#include#include int main() { int num = -10; int positive_num = abs(num); printf("负数:%d\n", num); printf("正数:%d\n", positive_num); return 0; }
输出:
负数:-10 正数:10
2. 通过位运算符取反
负数可以通过位运算符 ~ 取反转换为正数,~ 运算符可以将一个数的二进制位反转。对于负数,反转后符号位会变成 0,从而成为正数。
示例:
#includeint main() { int num = -10; int positive_num = ~num + 1; printf("负数:%d\n", num); printf("正数:%d\n", positive_num); return 0; }
输出:
负数:-10 正数:10
注意事项:
- 对于负数的最小值
INT_MIN,abs()函数会返回INT_MAX而不是INT_MIN的正数表示。 - 第二种方法只适用于有符号整数。











