在线跪求!c语言编程实现两个字符串连接

怎么用字符指针实现两个字符串的连接··比如说一个是love一个是you我要用一个字符串把这两个连接起来··思路是有FOR循环遍历连接的时候e里面存放的是y的地址··越简单... 怎么用字符指针实现两个字符串的连接··比如说一个是love一个是you 我要用一个字符串把这两个连接起来··思路是有FOR循环遍历 连接的时候e里面存放的是y的地址··越简单好理解·越好··谢谢··很急4着要答案··明天急用··好心的大师脚下留步··· 展开
 我来答
985967518
2015-12-19 · 知道合伙人教育行家
985967518
知道合伙人教育行家
采纳数:18027 获赞数:109908
14年本科毕业于河南理工大学,至今就读于河南理工大学攻读硕士学位,从事编程学习已有5年。

向TA提问 私信TA
展开全部

思路:先找到第一个字符串的结束位置,接着把第二个字符串的所有字符复制到第一字符串后面,最后加上字符串结束标志'\0'。

参考代码:

#include "stdio.h" 
void *fun(char *s1,char *s2){
int i=0,j=0;
while(s1[i++]);
i--;
while(s2[j])
s1[i++]=s2[j++];
s1[i]='\0';

int main() {
char a[200],b[100];
gets(a);
gets(b);
fun(a,b);
puts(a);
return 0;
}
/*
运行结果:
qwerewr
asdfghj
qwerewrasdfghj 
*/
与人知识
2010-07-12 · TA获得超过747个赞
知道小有建树答主
回答量:150
采纳率:100%
帮助的人:37.4万
展开全部
最简单的就是在输出在屏幕上的时候实现连接
以下程序为保证正确亲自上机用VC6.0运行过,很正确。
结果,屏幕显示:loveyou
#include<stdio.h>

void main()
{
int i,j;
char* s1 = "love" ;
char* s2 = "you" ;
for(i=0;i<4;i++)
printf( "%c" , *(s1+i) );
for(j=0; j<3; j++)
printf( "%c" , *(s2+j) );
printf ("\n");

}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
teddy_0416
2010-07-12 · TA获得超过556个赞
知道小有建树答主
回答量:335
采纳率:0%
帮助的人:366万
展开全部
#include <stdio.h>

int main()
{
char str1[100]="love",str2[100]="you"; //把str2 连接到 str1 里面哈

char *p1=str1, *p2=str2;
while(*p1 != '\0') p1++;

while(*p2 != '\0')
{
*p1 = *p2;
p1++;
p2++;
}
*p1 = '\0';

puts(str1);
// 第二个while 可以写成:
// while((*p1++ = *p2++) != '\0');
// 后面的 *p1 = '\0'; 也就不需要了
// 能理解上面的就好 下面的好好理解下

return 0;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
jznhljg
2010-07-12
知道答主
回答量:32
采纳率:0%
帮助的人:14.9万
展开全部
37 #include <sys/libkern.h>
38
39 char *
40 strcat(char * __restrict s, const char * __restrict append)
41 {
42 char *save = s;
43
44 for (; *s; ++s);
45 while ((*s++ = *append++) != 0);
46 return(save);
47 }
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式