Stringstream是C++中存在的流类,用于对字符串进行操作。它可以用于格式化/解析/转换字符串为数字/字符等。
十六进制是一个I / O操纵器,它以对I / O流的引用作为参数,并在操作后返回对该流的引用。
这是使用stringstream将任何十进制转换为十六进制的快速方法:
// CPP program to convert integer to
// hexadecimal using stringstream and
// hex I/O manipulator.
#include
using namespace std;
int main()
{
int i = 942;
stringstream ss;
ss << hex << i;
string res = ss.str();
cout << "0x" << res << endl; // this will print 0x3ae
return 0;
}
输出:
0x3ae
如果我们想将十六进制字符串改回十进制,则可以通过以下方式实现:
// CPP program to convert hexadecimal to
// integer using stringstream and
// hex I/O manipulator.
#include
using namespace std;
int main()
{
string hexStr = "0x3ae";
unsigned int x;
stringstream ss;
ss << std::hex << hexStr;
ss >> x;
cout << x << endl; // this will print 942
return 0;
}
输出:
942
想要从精选的最佳视频中学习并解决问题,请查看有关从基础到高级C++的C++基础课程以及有关语言和STL的C++ STL课程。要完成从学习语言到DS Algo等的更多准备工作,请参阅“完整面试准备课程” 。