main()-->这是main函数的无参调用形式.
main也是有返回值的,而且返回类型是int,一般都是返回0,代表正确执行,返回其它非零值都有操作系统对就的含义.
///
main(argc,argv)-->main有参调用.
main(int argc,char *argv[]){}
其中argc是被调用程序所具有的命令行参数的个数.因为程序名一直都要输入,所以argc>=1;如调用test.c,也要输入test回车才运行.
argv是一个字符串数组,即argv是一个二级指针.指向命令行参数字符串的字符串数组,每个字符串对应一个指向其首地址的字符指针.argv永不为空,因为程序名为第0个参数.
test China Beijing //test file1.c file2.c
1>空格作为分隔符,分为多个参数.
test "hello how" are "you doing"
2>argc为4,如果在一个命令行中,包括在双引号中的变元被当成是一个参数看待.
如果要用程序实现将参数输出.如test file1.c file2.c
main(int argc,char * argv[])
{
while(--argc>0)
{
printf("%s%c",*++argv,(argc>1)?' ':'/n');
}
}
--argc,++argv都是将程序名去除,不作为参数输出.许多系统提供echo命令,它的作用是实现"参数回送",将echo后面的参数(各字符串)在同一行输出.它的C代码如上所示.