코드에 유효성 검사 스크립트 사용에 대한 도움을 요청하는 이전 질문을 게시했습니다. 매우 도움이되는 대답을 한 후에 어떻게 진행해야 하는지를 알 수있었습니다. 글쎄, 나는 큰 장애물을 맞았다.C++ 숫자 유효성 검사 - 루프 사용 중
#include <iostream>
#include <sstream>
#include <string>
#include <ctype.h>
using namespace std;
int main()
{
unsigned __int64 input = 0;
int n, i;
char str[]="c3po...";
i=1;
n=0;
for (cout << "Input a number" << endl; cin >> input; cin.ignore(numeric_limits<int>::max(), '\n'))
{
cout << "We're parsing your input '" << input << "'\n";
if (input % 2 == 0)
{
cout << "Even!" << endl;
}
else if (input % 2 == 1)
{
cout << "Odd" << endl;
cout << "Lets make it even shall we? " << "Your new number is... " << input + 1 << endl;
}
else (isalnum(str[i]));i++;
{
cout << "We could not parse '" << input << "' as a number.\n";
}
}
system ("pause");
return 0;
}
제 코드에서 알 수 있듯이 유효성 검사 스크립트는 작동 중입니다. 나는 밖으로 나가고 싶은 몇 가지 버그가 있습니다.
1 I 입력 숫자, 그것은 실행되면 비록이해야 할뿐만 아니라
Could not parse 'inputted number' as a number
이 숫자 입력 분명히 할 때이 일이하고 싶지 않아 표시 등 코드!
2- 오류 메시지의 경우 입력 된 번호가 [0]으로 표시됩니다. 이것은 정수를 사용하는 것과 관련이 있습니까? 이 문제를 어떻게 해결할 수 있습니까?
감사합니다.
저는 현재 침대에 머물러 있습니다. 조기 시작 내일. –
당신은 당신이 이전에 얻은 것을 실제로 연습하지 않습니다. 변수를 사용하여 사용자의 입력을 검증하는 대신 입력에서 직접 추출 중입니다. – PRouleau
그 코드를 이해할 수 없었습니다. 나는 그것을 부수고 레이아웃을 변경하여 코드 작성 방법을 보였지만 파트가 무엇을하는지 전혀 알지 못한다. (나는 그것을 지켰으므로 더 많은 경험을 얻을 때 다시 돌아가 수정할 것이다. –