题目:编写函数,将数值字符串转换为整数。函数原型:int atoi(const *char).
这是我的代码(CodeBlock编译器):
#include <iostream>
#include <string>
using namespace std;
int atoi(const char*)
{
int n[5];
const char* number;
for(int i=0;i<5;i++)
{
n[i]=*(number+i)-'0';
cout<<n[i];
}
return 0;
}
int main()
{
int atoi(const char*);
cout<<"please input a string about 5 numbers: "<<endl;
char num[5];
cin.getline(num,5);
const char* number= num;
atoi(number);
return 0;
}
简单改一下
#include <iostream>
#include <string>
using namespace std;
int atoi(const char* number)
{
int n[5];
for (int i = 0; i<5; i++)
{
n[i] = *(number + i) - '0';
cout << n[i];
}
return 0;
}
int main()
{
int atoi(const char*);
cout << "please input a string about 5 numbers: " << endl;
char num[6] = { 0 };
cin.getline(num, 6);
const char* number = num;
atoi(number);
return 0;
}
atoi的函数要带参数名,而不是在函数体里面再定义一个number,这是两回事
int atoi(const char*)里面,你形参的名都没写,int atoi(const char* number)这样才对,
函数里的const char* number;这句注释掉。而且你这代码完全不对啊兄弟。另外,c++里有atoi函数,
#include <stdlib.h>后就可以直接用了。如有帮助,请采纳一下,谢谢。