Вопрос ввода / вывода:
Меня попросили получить ввод от пользователя и проанализировать его.
Проблема в том, что моя программа должна обрабатывать любую длину ввода и обрабатывать любые строки ввода, длина которых превышает 256 символов, как недействительные и печатать сообщение соответствующим образом.
В настоящее время я использую fgets
для получения строки ввода и strtok
для последующего ее анализа, но это проблема с очень длинной строкой ввода.
Как я мог решить эту проблему?
мой код до сих пор:
char userInput[1024];
char *token = NULL;
while (!feof(stdin)) {
fflush(stdin);
if (fgets(userInput, 1024, stdin) != NULL) {
token = strtok(userInput, " \t\r\n");
if (token != NULL) {
if (strncmp(userInput, "fiver", 5) == 0) {
printf("5");
}
else if (strncmp(userInput, "four", 4) == 0) { printf("4");}