7.3.6 指针数组作为main函数的形参
指针数组的一个重要应用是作为main函数的形参。在以往的程序中,main函数的第一行一般写成以下形式:
函数名后面的括弧是空的,没有形参。
C语言规定:main函数可以有参数。
例如:
argc和argv就是main函数的形参。main函数由系统调用。在处于系统操作状态下,输入定义main函数的文件名(经过编译、连接后得到的可执行文件名),系统直接调用main函数。为了能顺利将实参传给main函数的形参,在调用main函数时,应将实参和调用命令一起给出,即在一个命令行中包括命令名和需要传给main函数的参数。
命令行的一般形式为:
假设定义main函数的文件名为file1,如果要将两个字符串“China”,“Beijing”作为传送给main函数的参数。命令行可以写成:file1 China Beijing。
一般情形下,文件名应包括路径以及文件的扩展名。
带参数的main函数原型为:
void main(int argc,char *argv[]);
其中,argc是指命令行中参数的个数(注意,文件名也作为一个参数,例如有如下命令行:file1、China、Beijing,则argc的值等于3)。argv是一个指向字符串的指针数组。
命令行的参数应当都是字符串(例如命令行中的“file1”、“China”、“Beijing”都是字符串),这些字符串的首地址构成一个指针数组,见图7-7。
图7-7
指针数组argv中的元素argv[0]指向字符串“file1”,argv[1]指向字符串“China”,argv[2]指向字符串“Beijing”。
例7.16
程序如下:
程序运行结果如下:
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。