debugging with visual studio using redirected stan

2019-02-02 02:04发布

问题:

I am debugging c++ console application with Visual studio. I exhausted of inserting the same input every time I debug this program. I would like to use the same input more times.

I do this without debugging in command line with command: Program.exe < 1.in

Is it possible to use debugging with standard input redirected from file???

I already tried looking in to procejt properties. I tried setting Command to $(TargetPath) < 1.in instead of $(TargetPath). I also tried setting Command Arguments to < 1.in. Niether of these method worked.

I am using Visual Studio 2012. But this is probably same in all versions of studio.

回答1:

This is a supported debugging scenario. You do have to make sure that the debugger can find the file. Leave the Command setting at $(TargetPath). A possible value for the Command Arguments setting is:

 < "$(ProjectDir)test.txt"

if the input file "test.txt" is located in the project directory. Or type the full path of the file to be sure. The MSDN article that describes this feature is available here.



回答2:

I just create a file called stdin.txt in the project 1) set the Build Action to Content 2) Copy to Ouput Directory: Copy if newer

Then when you build stdin.txt is copied to the same folder as the executable.

Then in project properties debug|command line arguements enter the following < stdin.txt

There is no need to use a path macro



回答3:

If you don't want to mess with the the path you can add a new file with a right click on the source files folder in the solution explorer and then paste to it the content from the wanted file. And then change the command argument to the new file name.