1. 使用atoi函数
原型:
int atoi(const char*nptr);
头文件:stdlib.h
示例:
#include#include int main(void){ int n; char *str = "12345.67"; n = atoi(str); printf("int=%d\n",n); return 0;}
2 . 使用字符串流
int stringToInt(string str){ istringstream sstr(str); int result; sstr >> result; return result;}
3. 直接计算
计算每一个数的位数
int stringToInt(string str){ int result=0; for (int i = str.size()-1; i>=0; --i) result += (str[i]-'0')*pow(10, str.size()-1-i); return result;}
乘10累加
int stringToInt(string str){ int result=0; for (int i = 0; i<=str.size()-1; ++i) result = result*10+(str[i]-'0'); return result;}