首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >命令行参数

命令行参数
EN

Stack Overflow用户
提问于 2009-11-17 16:36:35
回答 3查看 2.3K关注 0票数 3

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

EN

回答 3

Stack Overflow用户

发布于 2009-11-17 16:39:23

你的文件路径有空格吗?如果是这样的话,你需要用引号把它括起来。

票数 4
EN

Stack Overflow用户

发布于 2009-11-17 17:14:43

您确定命令行参数处理正确吗?暂时将main()替换为以下内容:

代码语言:javascript
复制
int
main (int argc, char **argv)
{
    int j;
    for (j = 0;  j < argc;  ++j)
        printf ("argv [%d] = '%s'\n", j, argv [j]);
    return 0;
}

我的猜测是您的文件路径中包含空格。这些必须在命令行中加引号:

代码语言:javascript
复制
C:\> myprogram "c:\Documents and Settings\Administrator\My Documents\Test.dat"

如果不加引号,测试程序将输出:

代码语言:javascript
复制
argv [0] = 'myprogram.exe'
argv [1] = 'c:\Documents'
argv [2] = 'and'
argv [3] = 'Settings\Administrator\My'
argv [4] = 'Documents\Test.dat'
票数 1
EN

Stack Overflow用户

发布于 2009-11-17 16:40:47

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

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1747386

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档