代码如下:
/************************字符串转化为正数**************************/
// *s: 需要转化的字符串。
//需要注意一点:单个字符转化为数值:temp[i] - '0'
// 数字转化为字符串 :temp[i] + '0'
int my_atoi(char *s) {
char *pstr;
pstr = s;
int temp = 0;
bool flag = false;
//负数
if(*pstr == '-') {
pstr++;
flag = true;
}
//0
if(*pstr == '0') {
return 0;
}
//正数
while(*pstr) {
temp = temp*10 + (*pstr - '0');
pstr++;
}
return flag?-temp:temp;
}
第二种方法:
#include <string>
#include <sstream>
//转换简单但是执行效率比较低
int str2num(string s) {
int num;
stringstream ss(s);
ss>>num;
return num;
}