#include
using namespace std;
int main()
{
constexpr int MAX = 20;
char s[MAX] {0};
cin.getline(s,MAX);
char *p = s;
bool isNegative = false;
int num =0;
while(*p !='\0')
{
if(*p >='0' && p<='9')
{
num=num10+(*p-'0');
}
else if(p == '-' && p == s)
{
isNegative = true;
}
p++;
}
if(isNegative == true)
cout<<-1num<<endl;
else
cout<<num<<endl;
return EXIT_SUCCESS;
}
有些错误,有些帮你改了,有些不知道你想干嘛帮你注释出来了
#include<iostream>
using namespace std;
int main()
{
constexpr int MAX = 20;
char s[MAX]{ 0 };
cin.getline(s, MAX);
char* p = s;
bool isNegative = false;
int num = 0;
while (*p != '\0')
{
if (*p >= '0' && *p <= '9') //p少一个*
{
num = num10 + (*p - '0'); //num与10之间缺少操作符?
}
else if (*p == '-' && p == s) //p少一个*
{
isNegative = true;
}
p++;
}
if (isNegative == true)
cout << -1num << endl; //-1num?
else
cout << num << endl;
return EXIT_SUCCESS;
}