Я работаю над проектом, где я должен принимать данные от пользователя в терминале в c до тех пор, пока они не выйдут из ввода, а затем я завершу программу. Я понял, что не могу сделать это:Принимая непрерывный вход от пользователя в C
#include<stdio.h>
#include<stdlib.h>
int main(int argc, char **argv){
char *i;
while(1){
scanf("%s", i);
/*do my program here*/
myMethod(i);
}
}
Так что мой вопрос в том, как я могу принять этот беспрецедентный пользовательский ввод? Могу ли я сделать это с помощью циклов или что еще я могу сделать?
Удивительно, что это работает только одна проблема, хотя, когда я печатаю quit, она не выходит из программы. – atg963
Потому что 'fgets()' также записывает символ новой строки. –
Фактически только что он не понял, что fgets помещает \ n в конец строки ввода, поэтому просто добавьте \ n в конец строки strcmp, и он отлично работает! – atg963