16进制字符串转为整型

方法一 


 std::stringstream stream;
 string result="10000C";
 int n = 0;
 stream << result;
 stream >>hex>> n;


方法二


使用boost中的lexical_cast类.
string str = "10000C";
int nIndex = lexical_cast <int>(str);

 

方法三

 

        
        
        
        
#include < string > using namespace std; int HexStrtoi( const char * str) { int dec = 0 , Mark; if ( * str == ' 0 ' ) str += 2 ; while (Mark = * str ++ ) { dec <<= 4 ; if (Mark < 58 ) Mark -= 48 ; if (Mark > 64 && Mark < 71 ) Mark -= 55 ; if (Mark > 96 && Mark < 103 ) Mark -= 87 ; dec |= Mark; } return dec; } int main() { string str = " 156c " ; int value = HexStrtoi(str.c_str()); }

你可能感兴趣的:(16进制字符串转为整型)