读书人

十六进制字符串转换有关问题 着急

发布时间: 2013-06-25 23:45:41 作者: rapoo

十六进制字符串转换问题 ,着急!
char v = '7';
string strHex = "0x" + v; //0x7 here

unsigned int nthValue = 0;
sscanf(strHex.c_str(),"%x",&nthValue);

nthValue转换后的值为何是十进制的250???疑惑啊。。。。。



long nthValue = strtol(strHex.c_str(), NULL, 16); 用这个来转貌似也为250.。。。。
[解决办法]
string strHex = "0x" + v;这句的问题
你改成:
string strHex = "0x7"

string strHex = "0x";
strHex+=v;
试试

读书人网 >C语言

热点推荐