题意:将一个数字转化成十六进制的形式。
思路:简单模拟,注意负数符号位的处理。
class Solution {
public:
string toHex(int num) {
string re;
if(num == 0) re += '0';
while(num) {
int temp = num & 15;
if(temp > 9) {
re += temp - 10 + 'a';
}
else re += temp + '0';
num >>= 4;
if(num < 0) num &= 0x0fffffff;
}
std::reverse(re.begin(), re.end());
return re;
}
};

本文介绍了一个简单的C++方法,用于将整数转换为十六进制字符串形式,并特别关注了负数的处理方式。

被折叠的 条评论
为什么被折叠?



