示例程序mycp.c如上图所示,实现文件内容的复制。
经过编译后,执行./mycp open.c open2.c,程序执行成功。
解析
main函数参数:
argc
,即argument count,表示传递给程序的参数个数,程序本身的名字也计数在内。argv
,即argument vector,是一个字符串数组,包含所有传递给程序的参数。argv[0]
是程序的名字,argv[1]
是第一个参数,以此类推。
在上述示例中,执行命令 ./mycp open.c open2.c
时:
argc = 3
:表示一共传递了三个参数(程序名、open.c
和open2.c
)argv[0] =
“./mycp
“:程序的名字argv[1] =
“open.c
“:第一个命令行参数argv[2] =
“open2.c
“:第二个命令行参数
在上述命令中,直接省略了argc
这一参数,但好的编程习惯首先要检查 argc
的值,以确保用户提供了正确数量的参数。