给定一个整数,写一个函数将其转换为16进制。对于负整数,需要使用二进制补码。
样例1
输入:26
输出:"1a"
样例2
输入:-1
输出:"ffffffff"
class Solution {
public:
/**
* @param num: an integer
* @return: convert the integer to hexadecimal
*/
string toHex(int n) {
// Write your code here
long num=n;
if(num<0) num+=pow(2,32);
string result="";
while(num)
{
if(num%16>=10) result.insert(result.begin(),'a'+num%16-10);
else result.insert(result.begin(),'0'+num%16);
num/=16;
}
return result;
}
};