| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 715 人关注过本帖
标题:C语言字符串连接函数
只看楼主 加入收藏
lgjhlcd
Rank: 2
等 级:论坛游民
帖 子:12
专家分:29
注 册:2011-11-14
结帖率:66.67%
收藏
已结贴  问题点数:20 回复次数:3 
C语言字符串连接函数
void strcat(char *s,char *t)
{
    int n;
    n=strlen(s);
    while(*(s+n)=*t)
    {
        s++;
        t++;
    }
}
这个字符串连接函数,谁给解释一下while(*(s+n)=*t){s++;t++;}这几句啥意思,百思不得其解....
搜索更多相关主题的帖子: 字符串 C语言 
2015-11-18 21:58
未来大仙
Rank: 6Rank: 6
来 自:黑窟窿
等 级:侠之大者
威 望:4
帖 子:263
专家分:491
注 册:2015-6-20
收藏
得分:20 
回复 楼主 lgjhlcd
就是char *s 首先传入函数的时候,已经存入了字符数组的地址所以n就是s地址的那个数组的长度然后,在循环处,s是那个数组的首地址,不能被赋值,不然就不能达到连接字符的目的,所以要让他的地址移动到数组末地址的后面,然后把t指针的数组的第一个传给s的s+n的地址,然后就达到了连接字符的效果。

好好学习,天天向上!
2015-11-19 10:31
lgjhlcd
Rank: 2
等 级:论坛游民
帖 子:12
专家分:29
注 册:2011-11-14
收藏
得分:0 
回复 2楼 未来大仙
while(*(s+n)=*t)
我是说这个判断循环的条件怎么理解,
什么时候循环或终止循环
2015-11-20 23:22
未来大仙
Rank: 6Rank: 6
来 自:黑窟窿
等 级:侠之大者
威 望:4
帖 子:263
专家分:491
注 册:2015-6-20
收藏
得分:0 
回复 3楼 lgjhlcd
对啊,就是把*t的值存在那个地址,当*t的地址没有希望的值时候,那么*t的值就是小于等于0的数,这时判断为假,退出循环

好好学习,天天向上!
2015-11-21 10:39
快速回复:C语言字符串连接函数
数据加载中...
 
   



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

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