带参数的main函数
2013-06-21 12:59
120 查看
关于带参数的main函数网络收集:
intmain(intargc,char**argv)这里面的**argv含义··
是用来传递参数的,假如你编译成的文件名是a.exe,那么在命令提示符下可以通过a.exe1234来向程序传递参数,这时两个参数就会传递到字符串数组argv中,注意此时实际传递了三个参数,第一个参数是文件名,第二个参数是12,第三个是34,而argc就是参数个数。
ANSI-C(C89/C99)的话main()函数有2种主要形式。
(1)intmain(void)
(2)intmain(intargc,char*argv[])
(2)也可写成intmain(intargc,char**argv)
argv[argc]放空指针(NULL指针)。
argc和argv可以用别名。
另外,还有一种受系统限制的形式:
intmain(intargc,char*argv[],char*envp[])
前两个参数同(2),第三个参数envp[]放环境变量。
这个形式很少用。
所以严格讲,
ANSI-C推荐的带参数的main()函数只有上面(2)这一种。
另外,搜集了一下C和C++中常见的几种形式:
(1)main()
(2)intmain()
(3)intmain(void)
(4)intmain(int,char**)
(5)intmain(int,char*[])
(6)intmain(intargc,char**argv)
(7)intmain(intargc,char*argv[])
(8)intmain(intargc,char*argv[],char*envp[])
(9)voidmain(void)
(1)是(3)的简写。不推荐使用。
(2)是(3)的简写。在C++中是正确的形式。
(3)在C和C++中都是正确的形式。推荐使用。(还有缺省int的main(void)形式)。
(4)和(5)是不用参数时的一种写法。编译器级别高时会警告。不推荐使用。
(6)是(7)的另外写法。两种都可以,凭个人爱好。
(7)是带参数的正确的形式。推荐使用。
(8)是一种很少用的写法,且受系统限制。
(9)一般不认为是正确的写法。但是在嵌入式系统中有使用(包括voidmain()形式)
intmain(intargc,char**argv)这里面的**argv含义··
是用来传递参数的,假如你编译成的文件名是a.exe,那么在命令提示符下可以通过a.exe1234来向程序传递参数,这时两个参数就会传递到字符串数组argv中,注意此时实际传递了三个参数,第一个参数是文件名,第二个参数是12,第三个是34,而argc就是参数个数。
intargc,char**argv用于运行时,把命令行参数传入主程序。
argc--命令行参数总个数,包括可执行程序名。
argv[i]--第i个参数。
argv[0]--可执行程序名。
例如运行:
abc.exe
argc等于1,argv[0]是"abc.exe"
例如运行:
rec.exe45.2
argc等于3,argv[0]是"rec.exe",argv[1]是"4",argv[2]是"5.2".
主函数里若有:
intx;
floaty;
chars[80];
strcpy(s,argv[0]);//程序名存入了s
sscanf(argv[1],"%d",&x);//x得到数值4
sscanf(argv[2],"%f",&y);//y得到数值5.2
ANSI-C(C89/C99)的话main()函数有2种主要形式。
(1)intmain(void)
(2)intmain(intargc,char*argv[])
(2)也可写成intmain(intargc,char**argv)
argv[argc]放空指针(NULL指针)。
argc和argv可以用别名。
另外,还有一种受系统限制的形式:
intmain(intargc,char*argv[],char*envp[])
前两个参数同(2),第三个参数envp[]放环境变量。
这个形式很少用。
所以严格讲,
ANSI-C推荐的带参数的main()函数只有上面(2)这一种。
另外,搜集了一下C和C++中常见的几种形式:
(1)main()
(2)intmain()
(3)intmain(void)
(4)intmain(int,char**)
(5)intmain(int,char*[])
(6)intmain(intargc,char**argv)
(7)intmain(intargc,char*argv[])
(8)intmain(intargc,char*argv[],char*envp[])
(9)voidmain(void)
(1)是(3)的简写。不推荐使用。
(2)是(3)的简写。在C++中是正确的形式。
(3)在C和C++中都是正确的形式。推荐使用。(还有缺省int的main(void)形式)。
(4)和(5)是不用参数时的一种写法。编译器级别高时会警告。不推荐使用。
(6)是(7)的另外写法。两种都可以,凭个人爱好。
(7)是带参数的正确的形式。推荐使用。
(8)是一种很少用的写法,且受系统限制。
(9)一般不认为是正确的写法。但是在嵌入式系统中有使用(包括voidmain()形式)
相关文章推荐
- 关于Java的main函数参数args的实际应用探讨。
- 第10周 C语言及程序设计提高例程-38 main函数的参数
- gradle传递参数给Java项目的main函数
- (转)Java程序利用main函数中args参数实现参数的传递
- c++学习main函数输入参数argc argv,vs2008输入参数设置,cmd常用命令
- 带参数的main函数
- 46_main函数的参数
- main函数的参数
- Linux C编程--main函数参数解析
- c/c++程序main函数参数解析,以及参数传递的不同方法
- Myeclipse下添加Main函数运行的参数方法。
- main函数的参数
- main函数参数的使用
- 带参数的main函数
- main函数中的两个参数
- (实训第一天)讲一讲main函数返回值、参数argc、argv、并模仿登录功能
- main函数的参数:argc和argv
- [C/C++基础知识] main函数的参数argc和argv
- java中main函数中的 参数(String [] args)
- C#控制台应用程序Main函数中的参数args