发布网友
共4个回答
热心网友
思路:先找到第一个字符串的结束位置,接着把第二个字符串的所有字符复制到第一字符串后面,最后加上字符串结束标志'\0'。
参考代码:
#include "stdio.h"
热心网友
最简单的就是在输出在屏幕上的时候实现连接
以下程序为保证正确亲自上机用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");
}
热心网友
#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;
}
热心网友
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 }