Отладка с визуальной студией с использованием перенаправленного стандартного ввода
Я отлаживаю консольное приложение С++ с помощью Visual studio. Мне пришлось вставлять один и тот же ввод каждый раз, когда я отлаживаю эту программу. Я хотел бы использовать один и тот же ввод еще раз.
Я делаю это без отладки в командной строке с помощью команды: Program.exe < 1.in
Можно ли использовать отладку со стандартным вводом, перенаправленным из файла???
Я уже пробовал смотреть на свойства procejt. Я попытался установить команду в $(TargetPath) < 1.in вместо $(TargetPath).
Я также попытался установить Аргументы Аргументов в < 1.in. Нитье этого метода работал.
Я использую Visual Studio 2012. Но это, вероятно, одно и то же во всех версиях студии.
Ответы
Ответ 1
Это поддерживаемый сценарий отладки. Вы должны убедиться, что отладчик может найти файл. Оставьте настройку Command в $(TargetPath)
. Возможное значение для параметра "Аргументы команд":
< "$(ProjectDir)test.txt"
если входной файл test.txt находится в каталоге проекта. Или введите полный путь к файлу. Статья MSDN, описывающая эту функцию, доступна здесь.
Ответ 2
Я просто создаю файл stdin.txt в проекте
1) установить действие "Составление действий"
2) Копировать в каталог Ouput: копировать, если новый
Затем, когда вы создаете stdin.txt, копируется в ту же папку, что и исполняемый файл.
Затем в свойствах проекта debug | аргументы командной строки вводят следующие < stdin.txt
Нет необходимости использовать макрос пути
Ответ 3
Если вы не хотите связываться с этим путем, вы можете add
a new file
щелкнуть правой кнопкой мыши по папке source files
в solution explorer
, а затем вставить в нее содержимое из файла, А затем измените аргумент команды на новое имя файла.