有时候在做加减密或者视频转码的时候,需要对二进制文件进行打印分析,由于有些不能用字符表示,所以16进制显示就派上用场了。
在C++中,把字符转为16进制显示还是很方便的,直接上代码:
#include <iostream>
#include <string>
#include <sstream>
int main()
{
using namespace std;
string str = "Hello world!";
stringstream ss;
for (int i = 0; i < str.length(); i++)
{
int val = (int)str[i];
ss << "0x"<<hex << val<<" ";
}
string hexStr = ss.str();
cout << hexStr << endl;
return 0;
}