Можно ли запросить ввод данных пользователем и указать настройки по умолчанию?

Нередко можно увидеть программу командной строки, которая предлагает пользователю ввести строку, которая будет каким-либо образом обработана программой. Но возможно ли создать программу, которая делает это и имеет значение по умолчанию, которое уже есть в приглашении — так что, если пользователь хочет использовать значение по умолчанию, ему нужно только нажать Enter? (Но если пользователь хочет использовать другое значение, ему придется приступить к редактированию предварительно заполненной строки — что может означать удержание клавиши Backspace, чтобы удалить ее, а затем ввести что-то еще.)

условии, что:

  • Нужно работать на Windows. Ну, для моих целей это должно работать на Windows. Вы можете предложить решение, которое работает только на других ОС, если хотите, но я не приму ваш ответ.
  • Необходимо использовать только то, что предусмотрено стандартной библиотекой.
  • Недостаточно просто сказать «оставить ввод пустым, чтобы использовать значение по умолчанию» — это всего лишь обходной путь.

Я видел версии этого вопроса, которые специфичны для других языков, но не для C ++.

2

Решение

Один Можно сделать это, используя только стандартную библиотеку.
Но один не могу сделать это только с гарантиями, предоставленными стандартной библиотекой.

Для любого решения вам необходимо иметь способ управления терминалом (который подразумевает гарантию подключения к терминалу и знание особенностей управления этим терминалом.

К сожалению, окно консоли Windows не является надлежащим терминалом, которым можно управлять таким образом.

2

Другие решения