LinuxC下argv,argc[]的意义

MarkdownPad Document

LinuxC下argc,argv[ ]的意义

参考了http://blog.csdn.net/followingturing/article/details/7707584

还是根据实例来进行说明:

 1 #include<stdio.h>  
 2 #include<stdlib.h>
 3 
 4 int main(int argc,char *argv[]) 
 5 { 
 6     if(argc==1 || argc>2)
 7     { 
 8         printf("Please input the name of the file 
 9                 you want to edit, for example:./edit fillen\n"); 
10         printf("argv[0] is %s\n",argv[0]);
11     } 
12 
13     if(argc==2) 
14     { 
15         printf("Now EDIT %s\n",argv[1]); 
16         printf("argv[0] is %s\n",argv[0]);
17         printf("argv[1] is %s\n",argv[1]);
18     } 
19 
20     exit(0);
21 }

 

  • 通过gcc生成可执行文件edit如下:
  • 运行文件edit:./edit,如下:
  • 运行文件edit,并输入file.txt: ./edit file.txt,如下:

结论:

  1. argc 为外部命令参数的个数,因此

    输入命令./edit时,argc==1;
    输入命令./edit file.txt时,argc==2;

  2. argv[]为存储的命令,其中argv[0]即为可执行文件名;

    输入命令./edit时,argv[0]=="./edit";
    输入命令./edit file.txt时,argv[0]=="./edit",argv[1]=="file.txt";

2017-2-4 23:10;20

 

 

 

 

 

 

 

posted @ 2017-02-04 23:14  M4x  阅读(607)  评论(1编辑  收藏  举报