命令行参数 有何用啊 新手 搞不明白 求教
K&R C 看到命令行参数,只知道形式是这样的int main(int argc,char *argv[])
第一个参数表示命令行参数数目,第二个参数是指向字符串数组的指针。到底什么时候可以用到命令行参数?这样写有什么好处?新手 搞不明白 求教?
[解决办法]
你可以这样理解
相当于一个二维数组
argc就相当于这个二维数组有多少行
而argv[]就是每一行有多少个字符
也就是左边是对齐的,右边是不对称的,所以就很形象的成为锯齿状的数组
这个可以帮助你来理解命令行参数
[解决办法]
命令行参数很有用啊.
举个简单的例子:
比如游戏有一同的服务器.
即IP和端口是不同的.
就可以在启动游戏客户端的时候, 在命令行中加入 客户端要连接的 IP和端口, 这样增加服务器组就不用修改客户端程序了.
[解决办法]
#include <stdio.h>
int main(int argc, char *argv[])
{
inti;
if (argc == 1) {// 没有命令行参数
printf("Nothing to print\n");
}
for (i = 1; i < argc; i++) {
// 运行程序时加上命令行参数存在argv指针数组里面,
// 将像打印字符数组一样将每一个参数打印出来
// 实际应用可以传一些文件名之类的参数
printf("%s\n", argv[i]);
}
}