double_q_CPUTime;
double temp;
printf("Please enter q: CPU Time: ");
scanf("%lf", &temp);
if(input_validator('a',temp) == 'T') {
q_CPUTime = temp;
}
else {
printf("Invalid input");
}
Я не могу понять, как обрабатывать ошибки для приведенного выше кода. Я в основном хотел бы
- Запрос пользователя на ввод
- Подтвердите ввод пользователя, чтобы увидеть, содержит ли он только 1,2,3,4,5,6,7,8,9 или. в основном, чтобы убедиться, что это двойной
- Тогда, если это значение double, я бы хотел преобразовать значение сохранения в temp в q_CPUTIME
- А если это не двойное число, то покажите пользователю сообщение об ошибке "неверный ввод"
Я бы хотел, чтобы это повторялось до тех пор, пока пользователь не введет правильный дубль.
Я пробовал это много способов, и код в верхней части это моя лучшая попытка. Я просто не могу придумать способ реализовать это.
Каждый раз, когда я пытался, даже если пользователь вводит строку, он просто сохраняет какое-то странное число в двойном, что приводит к тому, что мои вычисления в дальнейшем нарушаются в программе или даже к С.
Извиняюсь за мой последний очень смутный пост на эту тему.
(я смотрел на проверку каждого введенного символа, но потом столкнулся с проблемами при переводе его в двойное число)