免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3157 | 回复: 5
打印 上一主题 下一主题

makeargv的问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-11-06 17:51 |只看该作者 |倒序浏览
问题:
1.创建这个参数数组的目的是做什么呢?
2.为一个字符串创建并打印一个参数数组的目的是什么?
比如有个可执行文件argtest,一个字符串“this is a test”
argtest “this is a test”
对这个命令创建并打印一个参数数组的目的是什么?给这个命令创建的参数数组是用来子做什么的?
我看的《unix系统编程》这是22-23页的内容
哪位高人明白请解释一下
我看着看着就觉得我不知道为什么看这个了。。。

论坛徽章:
95
程序设计版块每日发帖之星
日期:2015-09-05 06:20:00程序设计版块每日发帖之星
日期:2015-09-17 06:20:00程序设计版块每日发帖之星
日期:2015-09-18 06:20:002015亚冠之阿尔艾因
日期:2015-09-18 10:35:08月度论坛发贴之星
日期:2015-09-30 22:25:002015亚冠之阿尔沙巴布
日期:2015-10-03 08:57:39程序设计版块每日发帖之星
日期:2015-10-05 06:20:00每日论坛发贴之星
日期:2015-10-05 06:20:002015年亚冠纪念徽章
日期:2015-10-06 10:06:482015亚冠之塔什干棉农
日期:2015-10-19 19:43:35程序设计版块每日发帖之星
日期:2015-10-21 06:20:00每日论坛发贴之星
日期:2015-09-14 06:20:00
2 [报告]
发表于 2008-11-06 22:18 |只看该作者
并不是所有人都有你手头上那本书的

论坛徽章:
0
3 [报告]
发表于 2008-11-07 09:15 |只看该作者
我晕
不管有没有书,参数数组高手应该很明白啊
我就问问这个是做什么用的,为什么要用个参数数组

论坛徽章:
0
4 [报告]
发表于 2008-11-07 09:22 |只看该作者
不明白楼主想问什么
如果是命令行参数数组的话,那就是程序的命令行参数,比如ls -l,argv[0]=ls, argv[1]=-l
其他意思的话,就不明白了

[ 本帖最后由 pushion 于 2008-11-7 09:26 编辑 ]

论坛徽章:
95
程序设计版块每日发帖之星
日期:2015-09-05 06:20:00程序设计版块每日发帖之星
日期:2015-09-17 06:20:00程序设计版块每日发帖之星
日期:2015-09-18 06:20:002015亚冠之阿尔艾因
日期:2015-09-18 10:35:08月度论坛发贴之星
日期:2015-09-30 22:25:002015亚冠之阿尔沙巴布
日期:2015-10-03 08:57:39程序设计版块每日发帖之星
日期:2015-10-05 06:20:00每日论坛发贴之星
日期:2015-10-05 06:20:002015年亚冠纪念徽章
日期:2015-10-06 10:06:482015亚冠之塔什干棉农
日期:2015-10-19 19:43:35程序设计版块每日发帖之星
日期:2015-10-21 06:20:00每日论坛发贴之星
日期:2015-09-14 06:20:00
5 [报告]
发表于 2008-11-07 09:53 |只看该作者
原帖由 iris_omikite 于 2008-11-7 09:15 发表
我晕
不管有没有书,参数数组高手应该很明白啊

那你慢慢晕

论坛徽章:
0
6 [报告]
发表于 2008-11-07 14:50 |只看该作者
原帖由 pushion 于 2008-11-7 09:22 发表
不明白楼主想问什么
如果是命令行参数数组的话,那就是程序的命令行参数,比如ls -l,argv[0]=ls, argv[1]=-l
其他意思的话,就不明白了

你说的这个我明白,我问的问题没说清楚,我这么问吧:如果叫大家写一个创建参数数组的函数大家会怎么写?给个思路就可以了,书上的一个函数是这样的:
char **makeargv(char *s);  //这个是makeargv函数的原型

//下面的代码讲函数怎么被激活
int i;
char **myargv;
char mytest[]="this is a test";
if((myargv=makeargv(mytest))==NULL)
fprint(stderr,"Failed to construct an argument array\n");
else
for (i=0;myargv!=NULL;i++)
printf("%d:%s\n",i,myargv);

我想问的是书上讲这么一个实例,是想让读者明白一个什么道理?仅仅就是让大家明白这个参数数组是怎么创建的吗?还是以后实际工作中要自己去创建参数数组?
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP