学习C语言时一直不明白main函数带参数-命令行参数的使用方法,现在来个总结。
main函数可以带两个形参:argc和argv, argc 是一个整形变量,argv是一个指向字符串数组的指针数组。
void main( int argc, char *argv[ ] ) {
...../ / 函数体
}
实际上,main函数的参数值是从操作系统命令行上获得的,操作系统根据实际参数的个数自动赋值给argc.可执行文件名本身也算一个参数。字符指针数组argv的各元素值为命令行中各字符串的起始地址,指针数组的长度为参数个数,即argc.
举个简单例子来说:
测试如下:
(1)只在命令行下直接运行程序,没有传递其他参数:
(2)在命令行输入带参数:
第一个数是argc, 参数个数是3
如果命令行参数之间存在空格,需要用“ ”(双引号)将参数括起来