P0W*_*P0W 28
十进制到十六进制: -
std::stringstream ss;
ss<< std::hex << decimal_value; // int decimal_value
std::string res ( ss.str() );
std::cout << res;
Run Code Online (Sandbox Code Playgroud)
十六进制到十进制: -
std::stringstream ss;
ss << hex_value ; // std::string hex_value
ss >> std::hex >> decimal_value ; //int decimal_value
std::cout << decimal_value ;
Run Code Online (Sandbox Code Playgroud)
许多编译器支持该itoa功能(出现在POSIX标准中,但不在C或C++标准中).Visual C++称之为_itoa.
#include <stdlib.h>
char hexString[20];
itoa(value, hexString, 16);
Run Code Online (Sandbox Code Playgroud)
请注意,不存在十进制值或十六进制值.数值始终以二进制形式存储.只有数字的字符串表示具有特定的基数(基数).
当然,当值应该在较长的消息中显示时,将%x格式说明符与任何printf函数一起使用是很好的.