题目:学习使用按位取反 ~

程序分析:~0=-1~1=-2

实例

#include <stdio.h>

int main() {
    int a, b;
    a = 234;
    b = ~a;
    printf("a 的按位取反值为(十进制) %d\n", b);
    a = ~a;
    printf("a 的按位取反值为(十六进制) %x\n", a);
    return 0;
}

以上实例输出结果为:

a 的按位取反值为(十进制) -235 
a 的按位取反值为(十六进制) ffffff15 

在该程序中,我们使用按位取反运算符 ~ 对整数 a 进行按位取反操作。

首先,将整数 234 赋值给变量 a

然后,使用 ~a 对变量 a 进行按位取反操作,并将结果赋值给变量 b

使用 printf 函数输出变量 b 的十进制表示,即按位取反后的值。

接下来,再次对变量 a 进行按位取反操作,并将结果赋值给变量 a 本身。

最后,使用 printf 函数输出变量 a 的十六进制表示,即按位取反后的值。

通过该例子,我们可以了解按位取反运算符 ~ 的使用方法,它会将操作数的每一位取反(0 变为 1,1 变为 0)。注意,在对正整数进行按位取反时,结果是一个负整数。

标签: c语言, c语言教程, c语言技术, c语言学习, c语言学习教程, c语言下载, c语言开发, c语言入门教程, c语言进阶教程, c语言高级教程, c语言面试题, c语言笔试题, c语言编程思想, c语言练习, c语言练习题