У меня есть программа, которая принимает ввод из командной строки.Хотя все доступные команды являются одной строкой, для нескольких команд требуется дополнительная строка для дальнейшего определения действия.
например, «конец» - это одна команда, а «добавить foo» - вторая.
Мой код прекрасно обрабатывает 2 строковых ввода, но когда я пытаюсь получить доступ к одной строковой команде (например, «end»), программа ждет большего ввода, а не действует немедленно.
Есть ли какой-то способЯ могу заставить программу читать ровно одну строку (которая может содержать до двух строк), а не то, как она есть сейчас?
Вот как это в настоящее время реализовано:
while(1)
{
scanf("%s%s", commandString,floorPath);
if(!strcmp(commandString,"end") return;
//I've got several of these as an "if / else", but there's no
//need to reprint them here.
}