файл как стандартный ввод в C в командной строке в Visual Studio - PullRequest
4 голосов
/ 16 мая 2011

Когда я пишу программу на C и компилирую ее с помощью отдельного компилятора, такого как MinGW, я могу написать «myprogram.exe

Как можноЯ делаю это в Visual Studio 2010?Мне известны «Аргументы команд» в свойствах проекта, а затем отладчик, но я не знаю, что там набирать.Это просто путь к входному файлу или что-то еще?

Ответы [ 5 ]

8 голосов
/ 06 августа 2013

Visual Studio поддерживает этот вариант использования.Для вашего проекта C ++ перейдите в свойства, Свойства конфигурации, Отладка и в Аргументы команд введите "

2 голосов
/ 09 марта 2015

Перейдите в свойства вашего проекта и в разделе «Свойства конфигурации> Отладка» напишите что-то вроде следующего в поле «Командные аргументы»: < "$(TargetDir)\input.txt"

Примечание:

  • $(TargetDir) разворачивается в папку «Debug» вашего проекта, поэтому убедитесь, что там есть input.txt. Здесь вы можете указать любой путь, но убедитесь, что он абсолютный.
  • Обязательно используйте двойные кавычки, иначе вы получите ошибку, если ваш путь содержит пробелы.

(с использованием Visual Studio 2013 с C ++)

2 голосов
/ 16 мая 2011

Вы не можете сделать это напрямую в Visual Studio.Перенаправление ввода / вывода является функцией командного процессора, а не VS.Вы можете открыть командную строку, перейти в каталог, в котором находится исполняемый файл, и выполнить команду:

myprogram.exe < test.txt

там (при условии, что test.txt также находится вв этом каталоге, если нет, вы всегда можете использовать полные пути).

Обновление : вы можете делать то, что хотите, если VS запустит для вас командную строку и запустит программу,В разделе «Свойства конфигурации» |Отладка, замените то, что находится в поле Command (обычно $ (TargetPath)) на:

cmd.exe /c "$(TargetPath)" < source-file

Оставьте аргументы команды пустыми.Я никогда этого не пробовал.Это может не сработать.

0 голосов
/ 16 мая 2011

Это функция программы оболочки командной строки, а не компилятор.Вы можете сделать это точно, если вы используете msys bash вместо использования стандартной (дрянной) оболочки Windows DOS.

0 голосов
/ 16 мая 2011

Для проекта в пределах visual studio щелкните правой кнопкой мыши на Project и выберите Properties. В окне свойств вы можете ввести абсолютный путь к физическому файлу, который вы хотите использовать в качестве ввода.

Else Вы должны иметь возможность запускать ваше приложение с консоли Visual studio

Пуск-> Программы-> Microsoft Visual Studio 2xxx-> Командная строка Visual Studio

Программа:

    class Program
{
    static void Main(string[] args)
    {
        if (args.Length > 0)
        {
            foreach (var item in args)
            {
                Console.WriteLine("{0}", item);
            }
        }
    }
}

Visual Studio 2010 Console Application Argument settings

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...