使用atoi
功能:
#include <iostream>
#include <cstdlib>
int main ()
{
int i;
char * num = "325";
i = atoi (num);
std::cout << i << std::endl;
return 0;
}
编辑
正如评论中所指出的,您不应该使用atoi
函数,因为您看不到转换是否有错误(atoi
如果失败将返回 0,但是这种情况呢int i = atoi("0");
)。当您使用 C++ 时,可以选择使用stringstream
#include <iostream>
#include <sstream>
using namespace std;
int main()
{
char * num = "3443";
int result;
stringstream ss;
ss << num;
ss >> result;
if (!ss.fail()) {
cout << result << endl;
}
return 0;
}
不幸的是,我这里没有 C++11 编译器,所以我不能尝试使用std::stoi
.
编辑 2
我做了一些快速研究,这里是建议使用strtol
函数的主题:如何在 C++ 中将字符串解析为 int?