有以下程序 #include<string.h> main(int arge,char *argv[]) { int i,len=0; for(i=1;i<arge;i++)len+=strlen(argv[i]);

admin2013-02-23  27

问题 有以下程序    #include<string.h>    main(int arge,char *argv[])    {  int i,len=0;      for(i=1;i<arge;i++)len+=strlen(argv);      printf(“%d\n”,len);    }    程序编译连接后生成的可执行文件是exl.exe,若运行时输入带参数的命令行是:    exl    abcd  efg  10<回车>    则运行的结果是

选项 A、22
B、17
C、12
D、9

答案8

解析 main()函数可以带参数,并且参数只能有两个,第一个参数(arge)类型为整型用来记下命令行的参数个数,第二个参数(argv)为一个字符型指针数组,其各个元素用来记下命令行各参数字符串的首地址。本题执行时,arge的值为4,在循环中依次求出algv[l]、argv[2]和argv[3]指向的字符串(“abcd”、“efg”和“10”)的长度,并把它们加到变量len中,得到len的值9。所以最后输出的len值为9。
转载请注明原文地址:https://kaotiyun.com/show/DFJp777K
0

最新回复(0)