#include<string.h>
int main(){
char str[100],str2[25]
char *pt=str,*pt2=str2
void stringEdit(char *pt,char *pt2)
void InputString(char *pt,char *pt2)
InputString(pt,pt2)
stringEdit(pt,pt2)
printf("string1 joint string2:\n")
puts(pt)
}
void InputString(char *pt,char *pt2){ //输入字符串
printf("Enter string1:\n")
gets(pt)
printf("Enter string2:\n")
gets(pt2)
}
void stringEdit(char *pt,char *pt2){ //链接字符串
int i=0,j=0,k
while(*(pt+i)!='\0'){
i++
}
while(*(pt2+j)!='\0'){
j++
}
for(k=0k<=i+jk++){
*(pt+i+k) = *(pt2+k)
}
}
1)简单来,直接用strcat
函数,需要包含头文件
string.h2)自己实现的话也不麻烦,但是要考虑一些细节:假设两个字符串指针为
str1,str2
,现在要讲
str1
和
str2
连接成一个新的字符串。a.考虑指针
str1,str2
是否非空b.如果将str2的内容直接连接到str1的末尾,要考虑str1是否有足够的剩余空间来放置连接上的str2的内容。如果用一个新的内存空间来保存str1和str2的连接结果,需要动态分配内存空间。
语法有错误,可以按照如下方法实现用指针把两个字符串连接起来:
1、第一步,创建一个新项目和.c文件,见下图,转到下面的步骤。
2、第二步,执行完上面的操作之后,定义变量类型,见下图的代码,转到下面的步骤。
3、第三步,执行完上面的操作之后,调用cpy函数,见下图的代码,转到下面的步骤。
4、第四步,执行完上面的操作之后,定义一个函数,了解并定义变量类型,见下图的代码,转到下面的步骤。
5、第五步,执行完上面的操作之后,使用For语句和if语句来进行判断,见下图的代码,转到下面的步骤。
6、第六步,执行完上面的操作之后,添加一个字符串终止符,并将其输出到main函数中,见下图的标记的代码,转到下面的步骤。
7、第七步,执行完上面的操作之后,执行并得出结果,两个字符串连接起来了,见下图。这样,就解决了这个问题了。