| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 846 人关注过本帖
标题:2级一个奇怪的题目
只看楼主 加入收藏
apple42323
Rank: 1
等 级:新手上路
帖 子:17
专家分:8
注 册:2009-7-23
收藏
得分:0 
n=n*10+*argv[i]-'0';
还是不太明白有什么用?
2009-09-08 10:55
UserYuH
Rank: 12Rank: 12Rank: 12
来 自:毅华
等 级:火箭侠
威 望:8
帖 子:720
专家分:3300
注 册:2009-8-10
收藏
得分:20 
程序代码:
main(int argc,char *argv[])
{
 int n=0,i;
 i=argc;
 printf("argc=%d\n",argc);
 printf("argv[0]=%s\n",argv[0]);
 for(i=1;i<argc;i++)
   {
    n=n*10+*argv[i]-'0';
    printf("argv[%d]=%s\n",i,argv[i]);
   }
 printf("n=%d\n",n);
 system("pause");
}
把上面的代码保存为name01.c(可以自己改名),再生成应用程序,如TC按F9,在你的工作目录下会自动生成
名为: name01.exe应该程序。这样就可以在DOS里测试了。
如输入:
D:\TC0\name01 32 54    回车      ("D:\TC0>"是工作目录,也就是name01.exe的路径)
·
输出:
argc=3                        ( argc等于3,不理解是吧,往下看 )
argv[0]=D:\TC0\NAME01.EXE  ( argv[0]字符串数组保存运行路径 )
argv[1]=32                  ( 32 看做是个字符串保存到字符串数组argv[1] )
argv[2]=54                  ( 54 也看做是个字符串保存到字符串数组argv[2],有三个字串,所以argc是3 )
n=35          ( 这里n是argv[1]和argv[2]头一个字符转换为数字,这里看出n在这程序里没有意思,也不能这样使用,如果我输入的32和54换成的是字母,n值就是个看不懂的结果 )
·
总结:
整型argc值代表字符串的数目,字符串指针数组argv存储各字符串的首地址。

努力—前进—变老—退休—入土
2009-09-08 12:36
快速回复:2级一个奇怪的题目
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.015270 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved