Меня попросили выполнить работу в C, когда я должен читать с ввода, пока не будет пробела, а затем, пока пользователь не нажмет ввод.Если я сделаю это:
scanf("%2000s %2000s", a, b);
Это будет следовать 1-му правилу, но не 2-му.
Если я напишу:
I am smart
То, что я получу, эквивалентно:
a = "I";
b = "am";
Но это должно быть:
a = "I";
b = "am smart";
Я уже пробовал:
scanf("%2000s %2000[^\n]\n", a, b);
и
scanf("%2000s %2000[^\0]\0", a, b);
В первом из них пользователь ждет нажатия Ctrl + D (чтобы отправить EOF) и это не то, что я хочу.Во втором он не скомпилируется.Согласно компилятору:
предупреждение: не закрывать ']' для '% [' format
Есть какой-нибудь хороший способ решить эту проблему?