本實例演示按位取反運算符 ~ 的效果:將整數 234 取反,分別以十進制和十六進制輸出。
~ 將每個二進制位翻轉(0→1, 1→0)。~x = -x - 1(補碼表示)。00000000 00000000 00000000 11101010,取反得 11111111 11111111 11111111 00010101,即 -235(十進制)或 0xFFFFFF15(十六進制)。// Created by www.runoob.com on 15/11/9.
// Copyright © 2015年 菜鳥教程. All rights reserved.
//
#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