Я пытаюсь написать код на C ++, читая текстовый файл, содержащий ряд цифр. Например, у меня есть этот файл .txt, который содержит следующие серии чисел, смешанных с символом:
1 2 3 a 5
Я пытаюсь сделать код способным распознавать цифры и символы, например 4-ю запись выше (которая является символом), а затем сообщить об ошибке.
То, что я делаю, похоже на
double value;
while(in) {
in >> value;
if(!isdigit(value)) {
cout << "Has non-numeric entry!" << endl;
break;
}
else
// some codes for storing the entry
}
Однако функция isdigit
не работает для текстового файла. Кажется, когда я делаю in >> value
, код неявно преобразует a
в double.
Может кто-нибудь дать мне какое-нибудь предложение?
Большое спасибо!