| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 394 人关注过本帖
标题:结果为10,怎么得来的?我糊涂了
只看楼主 加入收藏
粉jj
Rank: 2
等 级:论坛游民
威 望:1
帖 子:123
专家分:82
注 册:2011-3-8
结帖率:85.11%
收藏
已结贴  问题点数:5 回复次数:3 
结果为10,怎么得来的?我糊涂了
void main(void)
         {char *s, *s1 = "here is", *s2 = "key";
s = s1; while (*s1!='\0') s1++;
while (*s1++=*s2++);s2 = s;
while(*s2!='\0')s2++;  printf("%d\n",s2-s);



           getch();}
搜索更多相关主题的帖子: void 
2011-04-21 17:56
defhvk
Rank: 2
等 级:论坛游民
帖 子:62
专家分:29
注 册:2011-4-8
收藏
得分:0 
*s2 = "key";s = s1;s1++;s2 = s;错误语法


2011-04-21 18:03
菜鸟auto
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:58
专家分:100
注 册:2010-7-23
收藏
得分:0 
这排版 真看不下去了  
2011-04-21 18:12
张春平
Rank: 3Rank: 3
来 自:北城
等 级:论坛游侠
帖 子:48
专家分:124
注 册:2010-12-2
收藏
得分:5 
以下只是我个人的理解,仅供你参考。我不敢保证我的解释没有错误哦
void main(void)
         {char *s, *s1 = "here is", *s2 = "key";
    s = s1;//s1,s都指向字符h,s2指向字符k。
 while (*s1!='\0') s1++;//此时s1指向了字符s;s、s2不变
while (*s1++=*s2++);//s不变,s1指向了字符y,s2指向了字符y。
s2 = s;//此时s2指向了字符h了,s、s1保持不变。
while(*s2!='\0')s2++;  //此时s2指向了字符s。
printf("%d\n",s2-s);//最后s指向的是字符h,s1指向的字符y,s2指向的是字符s。因此s2-s=10;
           getch();
}
2011-04-21 18:36
快速回复:结果为10,怎么得来的?我糊涂了
数据加载中...
 
   



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

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