cpp之 !! 的运用
!!:具有归一化的作用,不等于0的数就制成1,等于0的数就是0。测试如下:
代码:
int main() {
int n = 15;
cout << !!(1) << endl;
cout << !!(-1) << endl;
cout << !!(0) << endl;
/*cout << n << "的二进制为";
reverse(n);
cout << endl;
for (int i = 0; i < 31; i++) {
//cout << !!(n && (1 << i));
int ind = (n & (1 << i));
cout << ind << endl;
}*/
return 0;
}
输出结果为:
可以利用他的这个性质实现将十进制转化为二进制的操作。并且二进制的位数是我们自己任意指定的。
代码演示
int main() {
int n = 15;
cout << "请输入一个数:";
cin >> n;
cout << "对应二进制为" << endl;
for (int i = 15; i >= 0; i--) {
cout << !!(n & (1 << i));
}
return 0;
}
结果为