65,206
社区成员
发帖
与我相关
我的任务
分享
#include <iostream>
using namespace std;
int main() {
char ch1 = 0, ch2 = 0, ch3 = 0, ch4 = 0;
cout << "Enter four characters: ";
cin >> ch1 >> ch2 >> ch3 >> ch4;
unsigned int packed = ch1;
packed = (((((packed << 8) | ch2) << 8) | ch3) << 8) | ch4;
cout << "Value of packed characters: " //这里的两行看不懂是什么意思..
<< std::hex << std::showbase << packed << endl;
unsigned int mask = 0xff;
ch1 = packed & mask;
ch2 = packed >> 8 & mask;
ch3 = packed >> 16 & mask;
ch4 = packed >> 24 & mask;
cout << "Characters in reverse order are: " //题目意思明白,但是程序不懂..请懂的指教下.
<< ch1 << ch2 << ch3 << ch4 << endl;;
return 0;
}
谢谢两位.
把楼上提供的地址里面的资料看完了。那几个按位运算的知识我都接触了,但是还是无法理解程序表达的意思,还请再次指教,unsigned int packed = ch1;
packed = (((((packed << 8) | ch2) << 8) | ch3) << 8) | ch4; //在执行什么操作,什么意义

