• VS2013 带命令行参数的调试问题 解决方案


    int main(int argc,char* argv[])

    argc是命令行总的参数个数,argv[]是argc个参数,其中第0个参数是程序的全名,以后的参数命令行后面跟的用户输入的参数

    比如:  
       int   main(int   argc,   char*   argv[])  
       {  
       int   i;  
       for   (i   =   0;   i<argc;   i++)  
       cout<<argv[i]<<endl;  
       cin>>i;  
       return   0;  
       }  
       执行时敲入  
       F:MYDOCU~1TEMPCODED1DEBUGD1.EXE   aaaa   bbb   ccc   ddd  
       输出如下:  
       F:MYDOCU~1TEMPCODED1DEBUGD1.EXE  
       aaaa  
       bbb  
       ccc  
       ddd  
    --------------------------------------------------------------------

    char   *argv[]是一个字符数组,其大小是int   argc,主要用于命令行参数   argv[]   参数,数组里每个元素代表一个参数;
    比如你输入  
       test   a.c   b.c   t.c  
       则  
       argc   =   4  
        
       argv[0]   =   "test"  
       argv[1]   =   "a.c"  
       argv[2]   =   "b.c"  
       argv[3]   =   "t.c"
    --------------------------------------------------------------------------------------------  
    argc记录了用户在运行程序的命令行中输入的参数的个数。  
    arg[]指向的数组中至少有一个字符指针,即arg[0].他通常指向程序中的可执行文件的文件名。在有些版本的编译器中还包括程序
    文件所在的路径。
    -------------------------------------------------------------------------

    好了,解释完这个。就有人问了,在调试的时候怎么输入参数呢,参数文件不在同一个文件夹下面怎么办?

    其实很简单的就可以处理了,我提供两种方法:

    第一种:

    无需调试的情况:

          直接用dos命令进入到***.exe目录下然后输入: ***.exe pra1 pra2

    第二种:

    需要调试的情况:

        i.先选择项目-〉右键-〉属性

        ii.调试 -〉命令行参数

        在命令行参数里面输入命令行参数即可。

    需要注意的是,不需要像第一种那样样输入***.exe了。只需要输入 pra1 pra2 ,中间用空格隔开。

  • 相关阅读:
    vue.js 第二课
    vue.js学习(第一课)
    2016-11-14看张大神的微博总结
    这几天的工作总结:
    调了一天的兼容总结下
    鸭式辩论
    prototype 原型
    前端ps常用的小技巧
    Android的开始之相对布局
    Android的开始之线性布局
  • 原文地址:https://www.cnblogs.com/Robert-huge/p/6047771.html
Copyright © 2020-2023  润新知