网上关于字符串转数字的资料比较散乱,说什么的都有,为了方便自己记忆在这里记录一下。
标准c方法:
char* strHex = "0xFF";
long lValue = strtol(strHex, NULL, 16);
类似的还有strtod(将字符串转换成浮点数), strtoul(将字符串转换成无符号长整型数)
如果不要求必须转为16进制可以使用
atof(将字符串转换成浮点型数)
atoi(将字符串转换成整型数)
atol(将字符串转换成长整型数)
c++方法:
stringstream sstream;
sstream.setf(ios_base::hex, ios_base::dec);
int iValue = 0;
sstream << strHex;
sstream >> iValue;