c++10進数と16進数変換の1つの方法
797 ワード
c++標準ライブラリのstringとsstreamを用いてこの変換を完了することができます.もちろん、これは実行可能な方法です.
#include
#include
#include
std::string htoi(const std::string &hStr)
{
return std::to_string(std::stoi(hStr, nullptr, 16));
}
std::string itoh(const std::string &iStr)
{
std::stringstream ss;
int temp = std::stoi(iStr, nullptr, 10);
ss.setf(std::ios_base::hex, std::ios_base::basefield);
ss.setf(std::ios_base::showbase);
std::string result;
ss << temp;
ss >> result;
return result;
}
//
int main()
{
std::string h, i;
std::cin >> h >> i;
std::cout << htoi(h) << "
"
<< itoh(i) << std::endl;
return 0;
}