命令行参数

时间:2009-11-17 08:36:35

标签: visual-studio command-line

我正在尝试在Visual Studio中添加我的文件作为命令行参数。我知道我的代码工作,因为当我使用fopen(“整个路径在这里”,“r”),它运行。然后我将该文件添加为命令行参数,而我没有这样的文件或目录。有什么想法吗?感谢。

3 个答案:

答案 0 :(得分:4)

您的文件路径是否有空格?如果是这样,您需要将其括在引号中。

答案 1 :(得分:1)

您确定命令行参数是否正确处理?暂时用这个替换你的main():

int
main (int argc, char **argv)
{
    int j;
    for (j = 0;  j < argc;  ++j)
        printf ("argv [%d] = '%s'\n", j, argv [j]);
    return 0;
}

我的猜测是你有文件路径,里面有空格。那些必须在命令行上引用:

C:\> myprogram "c:\Documents and Settings\Administrator\My Documents\Test.dat"

如果没有引用,测试程序将输出:

argv [0] = 'myprogram.exe'
argv [1] = 'c:\Documents'
argv [2] = 'and'
argv [3] = 'Settings\Administrator\My'
argv [4] = 'Documents\Test.dat'

答案 2 :(得分:0)

您始终可以在Visual Studio中调试从命令行获取的文件名,然后您就知道出了什么问题。