我有一个包含5个字符的字符串.我想将每个单个字符转换为int,然后将它们相互相乘.这是代码:
int main()
{
int x;
string str = "12345";
int a[5];
for(int i = 0; i < 5; i++)
{
a[i] = atoi(str[i]);
}
x = a[0]*a[1]*a[2]*a[3]*a[4];
cout<<x<<endl;
}
Run Code Online (Sandbox Code Playgroud)
它为atoi的行提供了这个错误:
从'char'无效转换为'const char*'[-fpermissive] |
我怎样才能解决这个问题?谢谢.
您可以使用:
a[i] = str[i] - '0';
按ASCII字符位置进行数字转换的字符.