Я хотел бы написать программу, которая продолжает запрашивать ввод пользователя, пока я не вырвусь из него с помощью ctrl + D. Вот что у меня есть:Loop Для ввода пользователем
char input[100];
while(input != EOF){
printf("Give me a sentence:\n");
fgets(input, 5, stdin);
printf("your sentence was: %s\n", input);
}
Я хотел бы, fgets, чтобы начать с 5 первых символов нового входа, не нравится 6-го последнего входа всякий раз, когда это петли вокруг, и я не знаю, как написать условие на время, чтобы разбить его через ctrl + D. Прямо сейчас, когда вы видите вход (который является char [], сравнивается с EOF).
Спасибо за любой совет.
ferror также предоставит аналогичную услугу. – Lalaland
Благодарю вас, это работает для ctrl + d. Тем не менее, он не печатает строку, которую я только что напечатал. Кажется, что stdin не был очищен или что-то еще, поэтому он постоянно добавляет распечатки в каждый цикл. – KWJ2104
Он работает на моем компьютере, за исключением того, что он прерывает строки (из-за второго аргумента от 5 до fgets). – Lalaland