use*_*947 0 c++ string integer
我有一根绳子,xxxxxxxxxxxxxxxxxxx
我正在将字符串读入较小字符串的结构,并使用 substr 来解析它。我需要将其中一种字符串类型转换为整数。
atoi不适合我。我该怎么做?它说:
无法将 std::string 转换为 const char*
#include <iostream>
#include <string>
using namespace std;
void main();
{
string s = "453"
int y = atoi(S);
}
Run Code Online (Sandbox Code Playgroud)
std::atoi()需要const char *传入。
将其更改为:
int y = atoi(s.c_str());
Run Code Online (Sandbox Code Playgroud)
或者使用std::stoi()它可以直接传递string:
int y = stoi(s);
Run Code Online (Sandbox Code Playgroud)
您的程序还有其他几个错误。可行的代码可能是这样的:
#include<iostream>
#include<string>
using namespace std;
int main()
{
string s = "453";
int y = atoi(s.c_str());
// int y = stoi(s); // another method
}
Run Code Online (Sandbox Code Playgroud)