• 初学C语言时我们使用的都是不带形式参数的main()函数,但是其实C语言中的main函数可以有两个形式参数,习惯上我们把第一个形参记作argc,这是一个整型的形参
  • 第二个形式参数记作argv,这是一个字符串数组的名字,形参名字可以由编程者自己编写
  • 第一个形式参数是第二个字符数组中字符串的个数,所以main函数的定义头部可以写成:int main(int argc,char *argv[])

我们知道一个C语言源程序有且只有一个main()函数,它的位置可以任意,但是C语言语句的执行总是从main()函数开始到main()函数结束,C语言规定它不可以被其它函数所调用,所以给main函数传递实参不能在程序中完成,而需要在windows系统的命令行中完成,argv[]字符串数组的第一个元素是本程序的名字,在命令行中给main函数传递实参时不用给第一个参数传递实参,只用给第二个参数传递实参即可,如下是在命令行给买函数传递实参的例子

  • 程序源代码
#includeint main(int argc,int *argv[]){int i;for (int i = 0; i < argc; i++)printf("argv[%d]=%s\n", i, argv[i]);printf("传入参数的个数为:%d\n", argc);return 0;}
  • 在命令行中给main函数传递参数运行C语言程序

  • 接下来我们学习如何使用命令行来运行C语言程序或者python源程序

首先是关于如何打开Windows命令行的,我们按住快捷键“windows图标+R”进入运行窗口,在其中输入cmd 然后点击确定

如此便可以进入命令行窗口了

如图,进入命令行以后我们所看到的”C:\Users\南雁>”表示此时是在这个工作目录下执行命令,如果我们此时输入命令”dir”然后按enter键,表示的是查找此工作目录下所包含的文件有那些,如:

若我们想要跳转到其它工作目录去执行操作,我们需要输入“cd +空格+要跳转到的文件路径”,如:

此时命令行就跳转到了”C:\Users\南雁\source\repos\C语言深入学习\C语言深入学习”这个文件夹下执行命令,输人dir查询这个文件夹中所包含的文件,如:

若要跳转到D盘直接输入命令”D:”即可

若要在命令行中运行python源代码只需执行命令”python+所要执行的程序的绝对路径”即可,如果要执行的程序就在命令行执行命令所在的文件夹中那么只需写出文件的名字即可而不用写出其绝对路径,如:

程序源代码

print("人生苦短,我用pyhton")print("欢迎来到python的世界")exit(1)#用了该函数之后,程序到这儿就会停止运行,所以该函数的作用是使程序提前结束print("如下是一个测试的例子")print("用了该函数之后程序还能执行到这儿吗")

程序在命令行中的运行结果

若要直接在命令行中编写和运行python源程序,只需输入命令”python”然后按下enter键,此时就会会出现python的版本信息,然后就可以编写和运行python源程序了。如:

在学习在命令行中运行C语言源程序之前我们需要了解先了解gcc因为在命令行中运行C语言源程序就是通过gcc命令来完成的,我们知道C语言程序的执行方式是编译执行,而python是解释执行,所以要运行C语言源程序需要用到编译器,而gcc就是一款编译器,gcc全称GNU Compiler Collection是由GNU开发的编程语言的编译器所以说gcc就是C语言的翻译器,想要详细了解gcc可以看一下下面这篇文章

http://t.csdn.cn/jBenf

所以如果想要在命令行中执行C语言源程序,我们可以用记事本编写C语言源程序,保存到桌面,然后再进入到桌面这个工作目录下(使用cd命令改变命令行工作目录),注意文件名以.c作为后缀然后输入语句:”gcc 文件名.c -o 文件名”按下enter键,文件名就是你刚刚创建的C语言源程序文件如:

此时接着输入生成的可执行文件的名字就可以运行该程序了,如:

此时就会执行里面的代码,我上面运行的程序源代码如下:

#includeint main(){printf("welcome to c\n");return 0;}

“gcc 文件名.c -o 文件名”对于此命令中的”-o”是用于控制我们创建的可执行文件的文件名字的,gcc编译器将源程序编译完成之后会生成一个以.exe结尾的可执行的文件,此时我们再在命令行中输入该可执行文件的称就可以执行此程序了,若我们不用-o控制所创建的可执行文件的名字则默认创建的可执行文件的名字的名称是a.exe,如:

可以看到执行命令 “gcc 文件名.c -o 文件名”后在桌面生成了一个以.exe结尾的可执行文件,该可执行文件的名称就是我们刚才在-o后面输入的文件名字

若不用-o控制创建的可执行文件的名称 ,那么默认创建的可执行文件的名称是a.exe,如: