📌  相关文章
📜  C++中的StringStream,用于将十进制转换为十六进制并返回

📅  最后修改于: 2021-05-30 11:08:54             🧑  作者: Mango

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等的更多准备工作,请参阅“完整面试准备课程”