C++中0x0f怎么用?

来源:百度知道 编辑:UC知道 时间:2024/06/01 11:04:04
见一道题上有0x0f 不知道怎么用?哪位大虾教教我~~~
#include <iostream.h>
void main( )
{
int a,b;
cout<<"输入一个整型数:";
cin>>a;
b=a|0x0f ;
cout<<dec<<b<<'\n'<<hex<<b<<'\n'<<(b&0x0f)<<endl;
}
这题是让输入一个数,它的又四位都置一...教教我...

你的问题是:
它的右四位都置一(“又”是错别字哈!),恭喜你,这个功能你的这个程序实现了,
如果你输入的a的值小于等于15--除了最右边的四位外,其他位都是为0.
那么最后的结果都是:f

f--十六进制,
15--十进制
1111--二进制,所以说你的功能实现了,右四位都置1.

二进制操作运算符:
0 | 0=0
0| 1=1
1|0=1
1|1=1

此外,还有取反:
0~ 结果-->1
1~ 结果-->0

抑或
1^1 结果0
1^0 结果1
0^1 结果1
0^0 结果0

但是其他位置呢?a大于15的情况。
比如输入的是a=45;
二进制表示为101101
程序执行后结果。
101111--恭喜你,你的功能还是实现了。
--47--十进制,
--2f--十六进制。

----------------
你的功能是实现的了啊!没问题!!

‘|’或操作,保证了无论其中一个操作数是什么,只要另外一个数改位置是1,最后的结果都是1.

十六进制的0x0f,对应的二进制为 0000 1111
b=a | 0x0f 那就是不管右四位是什么,都置为1了。
| 是按位或运算。就是a和0x0f的二进制每一位进行或运算得到b.
运算如下:
0 | 0=0
0| 1=1
1|0=1
1|1=1

1.0x开头表示是16位形式的数字,0x0f转换到二进制就是00001111,转换到十进制就是15,使用起来和普通整数没有区别,直接在程序当中当成整数常量即可。

2.其他字符详见ASCII表:

ch&0x0f这是什么意思啊 C语言中 ^怎么用 C语言中 ‘0’怎么解释 C语言中 random() 函数怎么用? c语言中rand()函数怎么用? sleep() 在 C 语言中怎么用? C语言中bioscom()函数怎么用? C语言中ELSE怎么用? 3C中怎么用AM 3c中怎么用汉语起名?