社区
C语言
帖子详情
达人来帮我看看这个程序的结果是什么,谢谢(顺便散分)
zzitmf
2005-06-16 09:14:37
#include <string.h>
main(int argc ,char *argv[ ])
{ int i,len=0;
for(i=1;i<argc;i+=2) len+=strlen(argv[i]);
printf("%d\n",len);
} 经编译链接后生成的可执行文件是ex.exe,若运行时输入以下带参数的命令行
ex abcd efg h3 k44
执行后输出结果是()
为什么?我有结果,就是不知道为什么
...全文
263
23
打赏
收藏
达人来帮我看看这个程序的结果是什么,谢谢(顺便散分)
#include main(int argc ,char *argv[ ]) { int i,len=0; for(i=1;i<argc;i+=2) len+=strlen(argv[i]); printf("%d\n",len); } 经编译链接后生成的可执行文件是ex.exe,若运行时输入以下带参数的命令行 ex abcd efg h3 k44 执行后输出结果是() 为什么?我有结果,就是不知道为什么
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
23 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
sea2000cn
2005-06-22
打赏
举报
回复
学习!
jixingzhong
2005-06-22
打赏
举报
回复
mark!!
Audi_TT
2005-06-17
打赏
举报
回复
up
Flood1984
2005-06-17
打赏
举报
回复
int argc ,char *argv[ ]
主要是不理解这些参数,什么意思?
同时怎么编译运行,我在TC上试了,根本行不通
----------------------
运行得在DOS下进入ex.exe索在得目录输入:
ex abcd efg h3 k44
光在TC下是不能调试的。
kunp
2005-06-16
打赏
举报
回复
http://blog.csdn.net/kunp/archive/2005/01/07/243592.aspx
这篇文章专门讲到main的参数,看看吧
kunp
2005-06-16
打赏
举报
回复
输出的结果是6阿,因为你求得第一个参数和第三个参数的字符串长度和阿
strlen("abcd") + strlen("h3")
下面这个程序应该对你了解argc, argv会有所帮助,
---------------------------------------------------------------------
#include <stdio.h>
#include <stdlib.h>
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
int i = 0;
int len = 0;
for(i = 1; i < argc; i += 2)
{
len += strlen(argv[i]);
printf("argv[%d] : %s\n", i, argv[i]); //打印你计算的参数及其长度
}
printf("%d\n\n",len);
printf("now look here\n");
//打印参数的总个数
printf("argc: %d\n", argc);
//打印所有参数
for(i = 0; i < argc; i++)
{
printf("argv[%d] : %s\n", i, argv[i]);
}
system("PAUSE");
return 0;
}
zhousqy
2005-06-16
打赏
举报
回复
应该是6啊.
Bsq28
2005-06-16
打赏
举报
回复
结果应该是 6 吧。
ex abcd efg h3 k44
总体来讲应该是五个参数,其中
argv[0] = "ex"
argv[1] = "abcd"
argv[2] = "efg"
argv[3] = "h3"
argv[4] = k44
那个FOR 循环, 步长是2 , 计算字符串长度之和的,
rick29
2005-06-16
打赏
举报
回复
argc是包括可执行文件名的程序参数个数,你这里argc就等于5
argv是各个参数组成的数组,你这里
argv[0] = "ex"
argv[1] = "abcd"
argv[2] = "efg"
...
然后看程序,应该没啥问题了吧?
kobefly
2005-06-16
打赏
举报
回复
#include <string.h>
main(int argc ,char *argv[ ])
{ int i,len=0;
for(i=1;i<argc;i+=2) len+=strlen(argv[i]);
printf("%d\n",len);
}
经编译链接后生成的可执行文件是ex.exe,若运行时输入以下带参数的命令行
ex abcd efg h3 k44
这样的话,argc == 5
argc[0] = "ex";
argc[1] = "abcd";
.....
for(i=1;i<argc;i+=2) len+=strlen(argv[i]);
所以
len = strlen("abcd") + strlen("h3") = 6
summerICEREDTEA
2005-06-16
打赏
举报
回复
我输出6啊
naturemickey
2005-06-16
打赏
举报
回复
结果是6,就是“abcd”和“h3”的长度和。
charles_ju
2005-06-16
打赏
举报
回复
老大:ex就是文件名啊,还有啊argc,argv可以随便找一本书查一下啊,很简单的啊,这个你调试的时侯一定要选择参数的啊,否则不能调试的啊
zzitmf
2005-06-16
打赏
举报
回复
int argc ,char *argv[ ]
主要是不理解这些参数,什么意思?
同时怎么编译运行,我在TC上试了,根本行不通
heskyII
2005-06-16
打赏
举报
回复
//我反对。
#include <string.h>
main(int argc ,char *argv[ ])
{ int i,len=0;
for(i=1;i<argc;i+=2) len+=strlen(argv[i]);
printf("%d\n",len);
} 经编译链接后生成的可执行文件是ex.exe,若运行时输入以下带参数的命令行
ex abcd efg h3 k44
//我得到的结果:8。
//原因如下:argc 指的是你输入的参数个数,虽然这里只输入了5个(argv[1],argv[2],argv[3],argv[4],argv[5])。但还有一个系统默认的参数argv[0],它存放的是该程序的程序名(具体是什么记不住了,呵呵)。所以在循环中,取了argv[1],argv[3],argv[5],它们的总长度因该是8。
tian_su
2005-06-16
打赏
举报
回复
有四个参数,abcd efg h3 k44
i=1;i<argc;i+=2
当i=1和i=3时,计算长度strlen(argv[i]);
输出长度和
6
应该是很详细了吧
twjneedstudy
2005-06-16
打赏
举报
回复
mark!!
mostideal
2005-06-16
打赏
举报
回复
mark!!
trackant
2005-06-16
打赏
举报
回复
6,argv[0]是ex自己,而不是ex程序的第一个参数,这个是比较容易误解的地方
foochow
2005-06-16
打赏
举报
回复
mark!
加载更多回复(3)
从配音秀看互联网+时代网络配音的特点与发展趋势.docx
受众群体通过认同他们喜爱的配音
达人来
寻求自我价值的实现,从而形成了网络配音特有的粉丝文化。 网络配音的平民化趋势逐渐明显,越来越多的非专业配音爱好者通过网络平台展示自己的才能。这些爱好者中不乏有天赋的...
社会化电商的正确解读:C2C2B2C的关键棋子.docx
简单的商品展示往往不足以吸引消费者,而需要有影响力的意见
达人来
赋予商品价值和吸引力。例如,蘑菇街和美丽说通过排行榜来突出热门商品,乐蜂网则依赖达人的真实推荐,这些都能为消费者提供购买的理由和信任感。 ...
WIFI遍地 巧用免费无线上网
在“无线城市”不断推进的今天,无论你是哪个运营商的用户,都可以享受一定时长的免费WIFI,甚至还...现在,就请
达人来
教你几个技巧。大人说,生活无难事,只怕有心人。IT168网友已经整理出大把“秘籍”,只恨你不知。
小学三年级品德与社会上册家乡风味小吃PPT教案.pptx
在“家乡风味小吃制作方法”的活动中,教师可能会邀请家长或社区里的烹饪
达人来
示范制作过程,让学生们亲手体验,感受劳动的乐趣和美食的来之不易。这样的实践教学能培养孩子们的动手能力和团队合作精神,同时也能...
小红书整体框架玩法 pdf
- **品牌方**:通过投放广告或合作
达人来
进行推广的品牌。 #### 1.2 品牌方目标 - **长期转化**:品牌方的目标是在小红书平台上建立长期且稳定的用户基础,实现持续的销售转化。 - **内容控制**:品牌方可以通过...
C语言
70,038
社区成员
243,247
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章