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

这是UNIX和Linux中的标准主函数.

  • argc:用来统计运行时发送给main函数的命令行参数的个数;
  • argv[ ]:其中每个元素都是上述参数(以字符串形式存储)的首地址;
    • argv[0]指向程序运行的全路径名;
    • argv[1]指向程序名后的第一个参数;
    • argv[2]指向程序名后的第二个参数;
    • ......
    • argv[argc]为NULL.
  • 编译器生成的可执行文件,main()函数不是真正的入口,而只是一个标准的函数,可执行文件才是入口.
    • 体会下例:(假设编译后为test.exe)
  1.  
    #include <stdio.h>
  2.  
     
  3.  
    int main(int argc, char* argv[]) {
  4.  
    printf("%d\n", argc);
  5.  
    while(argc)
  6.  
    printf("%s\n", argv[--argc]);
  7.  
    return 0;
  8.  
    }

生成可执行文件后, 在命令行进入可执行文件的目录, 输入:

> test.exe start hello

 

 

为什么第一个参数是esp+4?

 

posted @ 2020-10-08 19:57  KnowledgePorter  阅读(15)  评论(0)    收藏  举报