主函数解释 C/C++

来源:互联网 发布:土地利用现状数据价格 编辑:程序博客网 时间:2024/06/07 19:42

主函数:只有两种写法:

int main(void){return 0;} 不需要从命令行获得参数

int main(int argc, char *argv[]){return 0;} 需要从命令行获得参数

以前经常出现的情况,void main()不存在这样的写法。


DOS命令下如何运行exe文件

磁盘 例如 D盘 D:

文件夹 例如Dev c++ cd "Dev c++"

运行test.exe    test.exe  参数  参数  


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

argc 一个整型变量,用于存储命令行的参数个数,文件名tese.exe作为第一个参数对待

argv[] 一个存放参数“字符串”地址指针的数组,数组的每个元素都为指向某个命令行参数“字符串”的指针,argv[0]指向文件名

/* ******************************* *test.c *解释main函数中argc,argv[]  ******************************* */ #include<stdio.h>  int main(int argc,char *argv[]) { printf("参数个数:%d,分别是\n",argc); while(argc-->0)    printf("%s\n",*argv++); return 0; } 

例子:cat程序的实现,在命令行输入cat  文件名参数,输出多个文件内容到屏幕

/* ******************************* *cat.c *cat程序,在命令行输入文件名1,文件名2,... ,文件名n *在屏幕上输出这些文件内容  *如果没有文件名参数,则从标准输入中读取到标准输出  ******************************* */ #include<stdio.h>  int main(int argc,char *argv[]) { int c; FILE *fp; if(argc == 1)/*如果没有文件名参数*/ { while((c=getc(stdin) )!=EOF)/*(c=getc(stdin) )一定要括起来再去和EOF比较*/    putc(c,stdout); } else { while(--argc>0) { if( (fp=fopen(*++argv,"r") ) ==NULL)/*打开文件失败,此处一定要先argv++在解析*/ { printf("First paper name is not exist\n"); return 1; } else { while( (c=getc(fp) )!=EOF)    // printf("a");     putc(c,stdout); fclose(fp); } } } return 0; } 



0 0
原创粉丝点击