zoukankan      html  css  js  c++  java
  • C++ main()函数及其参数

    很多人学习了很久c,c++对其中的argc,argv都很困惑,教科书上都没有好好说明,现在的教育啊!!!悲哀

    main(int argc,char**argv)
       argv为指针的指针
       argc为整数
      
    char**argv or: char*argv[ ] or: char argv[ ][ ]
    main()括号内是固定的写法。

    下面给出一个例子来理解这两个参数的用法:

    假设程序的名称为prog,

    1.当只输入prog,则由操作系统传来的参数为:

       argc
    =1,表示只有一程序名称。
       argc只有一个元素,argv[
    0]指向输入的程序路径及名称:./prog

    2.当输入prog para_1,有一个参数,则由操作系统传来的参数为:

       argc
    =2,表示除了程序名外还有一个参数。
       argv[
    0]指向输入的程序路径及名称。
       argv[
    1]指向参数para_1字符串。

    3.当输入prog para_1 para_2 有2个参数,则由操作系统传来的参数为:

       argc
    =3,表示除了程序名外还有2个参数。
       argv[
    0]指向输入的程序路径及名称。
       argv[
    1]指向参数para_1字符串。
       argv[
    2]指向参数para_2字符串。


    void    main(    int    argc,    char    *argv[ ]    )  
      
    char    *argv[]    :    argv是一个指针数组,他的元素个数是argc,存放的是指向每一个参数的指针,他的第一个元素即argv[0]为编译生成的可执行文件名(包括路径eg:"F:/VC/Ex1/Debug/Ex1.exe"),从二个元素(argv[1])开始,是每一个参数  .
      
    int    argc    表示argv的大小,是实际参数个数+1,其中+1是因为argv[0]是编译后的可执行文件名

  • 相关阅读:
    图的理论基础
    哈夫曼树(三)之 Java详解
    哈夫曼树(二)之 C++详解
    哈夫曼树(一)之 C语言详解
    基数排序
    桶排序
    归并排序
    堆排序
    选择排序
    希尔排序
  • 原文地址:https://www.cnblogs.com/andy071001/p/3392604.html
Copyright © 2011-2022 走看看