windows命令行下如何调用main函数

 通常C/C++的入口函数都是main函数,平常一般使用的原型都是

int main() 
{
   //something;
   return 0;
}

但是 main函数也可以是有参数的

int main(int argc,char *argv[]) 
{
   //something;
   return 0;
}

参数1:argc就是命令行的参数个数。比如用户输入: filename  lynnbest  zxw 这个命令行命令,从字符串个数角度来看,就是3个字符串。所以argc=3.

参数2:是一个字符指针数组(一个数组,每个数组中的元素为一个指针)。也就是给main函数传递参数的值。

          比如前面提到的命令行命令 中,访问argv[0]就表示就是“filename  ”字符串的首地址。那么打印出来就是filename了,明显argc有几个值,那么字符串就有几个。而我们关心的参数当然就是除去filename了其他的参数,因为第一个为可执行文件的名字。从第二个开始才是 要传入的参数。

命令行命令解释:

         格式为:Exe文件名   参数1  参数2...参数n 

Exe文件名是指的是要执行的.exe文件名,参数1,参数2是指给main函数进行传参数

下面是一个具体的使用

1.首先编辑源代码

/测试命令行下 如何调用main函数
#include <stdio.h>  //功能就是从命令行中传递字符串,并且打印出来
int main(int argc,char *argv[])
{	
	char **p=argv;
	while(argc>1)
	{
		puts(*(++p)); //打印 从命令行中 输入的字符串
		argc--;
	}
	return 0;
}
//输入testc beijing shanghai
//输出	beijing 
//	shanghai
然后,对该文件进行编译链接,得到.exe文件。本文中是c_cpp_vs08.exe

2.进入windows命令行环境下,将目录切换到 上述的.exe文件夹下。

比如我的c_cpp_vs08.exe 文件位于h:下的。

点击  运行-开始-cmd 进入到命令行状态下:

先进入h:盘存放文件的盘符


使用cd命令进入指定文件夹


然后就是输入命令 –回车-打印出了两个字符串


小结:通过在命令行下给main函数进行传递参数,可以看出main函数也是接受参数的。只是因为大部分我们都是直接通过OS来调用main函数。

你可能感兴趣的:(C语言)