저는 C++을 처음 접했고 간단한 추가 프로그램을 작성하는 과정에 있습니다. 당신이 볼 수 있듯이, 내가 변수에 인수 값을 할당하고이를 추가 해요심각한 오류 처리가있는 간단한 추가 코드
int main(int argc, char *argv[])
{
if (argc==1)
cout << "[email protected]";
if (argc==2)
cout << "P";
//addition function
if (argc==3){
float number1 = atof (argv[1]);
float number2 = atof (argv[2]);
cout << number1 + number2 << endl;
}
if (argc>3)
cout << "P";
return 0;
}
: 지금까지 난 단지 매개 변수의 숫자와 함께 작동이 코드를 가지고있다. 이러한 argvs는 테스트 대상이며 모든 것을 처리 할 수 있어야합니다. 그래서 몇 가지 문제가 있습니다 :
변수 중 하나가 유효한 숫자 (예 : 1, 3000)가 아닐 때, 어떻게 프로그램을 실행시켜야합니까? 유효한 숫자는 방정식 (분수 또는 기타와 같은) 자체가 아니어야합니다.
- 이상한 유효 숫자 (3,000.2 (쉼표에주의))가 입력되면 at 3으로 변경됩니다. 어떻게 변경합니까?
그래, 내게 통합 된 오류 검사/처리 기술을 던져라. 나는 너를 영원히 사랑할 것이다.
왜 1 개 3000 유효하지 않은 번호는? –
문자열을 정수 또는 부동으로 구문 분석하는 대부분의 루틴은 읽지 않은 첫 번째 숫자가 아닌 숫자에서 중지합니다. 이것이 '3,000.2'가 '3'으로 변환 된 이유입니다. 또한 명령과 점은 다른 로케일에서 다른 의미를가집니다. 어떤 '3,000'은 3 천이고 다른 것들은 3 점 0입니다. –