C语言编程字符串连接问题
编写一个函数StrCatenate,输入两个字符串,将第二个字符串与第一个字符串连接,连接后的结果由第一个字符串返回!谢谢了帮帮我最好简单些我是新手谢谢有加分StrCat...
编写一个函数StrCatenate,输入两个字符串,将第二个字符串与第一个字符串连接,连接后的结果由第一个字符串返回!
谢谢了 帮帮我
最好简单些 我是新手 谢谢 有加分
StrCatenate是什么意思? 展开
谢谢了 帮帮我
最好简单些 我是新手 谢谢 有加分
StrCatenate是什么意思? 展开
展开全部
我晕~太简单了~我能用比别人简单1万倍的方法实现:
先说StrCatenate是什么意思,StrCatenate中的Str是String(字符串)的缩写,Catenate英文意思是"连接",合起来就是"字符串连接"的意思.
代码如下:
#include<string.h>
char *StrCatenate(char *str1,char *str2)
{
return ( strcat( str1,str2 ) );
}
// 注意:一共有4行,第一句 #include<string.h> 千万不能少!!!!
上面的代码我在VC++6.0中编译连接,测试成功~如果不对,我就把显示屏吃了~如果题目要求如你所说那么简单,那么你拿这段代码去给老师看~老师要不夸你是个天才我把主机也吃了~~~
先说StrCatenate是什么意思,StrCatenate中的Str是String(字符串)的缩写,Catenate英文意思是"连接",合起来就是"字符串连接"的意思.
代码如下:
#include<string.h>
char *StrCatenate(char *str1,char *str2)
{
return ( strcat( str1,str2 ) );
}
// 注意:一共有4行,第一句 #include<string.h> 千万不能少!!!!
上面的代码我在VC++6.0中编译连接,测试成功~如果不对,我就把显示屏吃了~如果题目要求如你所说那么简单,那么你拿这段代码去给老师看~老师要不夸你是个天才我把主机也吃了~~~
展开全部
...........楼上的很有才
我写了两个,自己看吧
#include<stdio.h>
#include<string.h>
char *StrCatenate1(char *str1,char *str2)
{
int len=0;
char *s1,*s2,*resultStr;
s1=str1;s2=str2;
while(*str1++) len++; /*得到str1的长度,未使用库函数strlen()*/
while(*str2++) len++; /*得到str2的长度*/
str1=(char *)malloc(len*sizeof(char)); /*为新的字符串分配空间*/
resultStr=str1;
while(*s1) *str1++=*s1++;
while(*s2) *str1++=*s2++;
*str1='\0';
return resultStr;
}
char *StrCatenate2(char *str1,char *str2)
{
int len;
char *resultStr,*backup;
backup=str1;
len=strlen(str1)+strlen(str2); /*调用strlen()求长度,需要string.h头文件*/
str1=(char *)malloc(len*sizeof(char)); /*为新的字符串分配空间*/
resultStr=str1;
while(*backup) *str1++=*backup++;
while(*str2) *str1++=*str2++;
*str1='\0';
return resultStr;
}
main()
{
char *s1="hello ";
char *s2="world!";
printf("%s\n",StrCatenate1(s1,s2));
printf("%s",StrCatenate2(s1,s2));
}
我写了两个,自己看吧
#include<stdio.h>
#include<string.h>
char *StrCatenate1(char *str1,char *str2)
{
int len=0;
char *s1,*s2,*resultStr;
s1=str1;s2=str2;
while(*str1++) len++; /*得到str1的长度,未使用库函数strlen()*/
while(*str2++) len++; /*得到str2的长度*/
str1=(char *)malloc(len*sizeof(char)); /*为新的字符串分配空间*/
resultStr=str1;
while(*s1) *str1++=*s1++;
while(*s2) *str1++=*s2++;
*str1='\0';
return resultStr;
}
char *StrCatenate2(char *str1,char *str2)
{
int len;
char *resultStr,*backup;
backup=str1;
len=strlen(str1)+strlen(str2); /*调用strlen()求长度,需要string.h头文件*/
str1=(char *)malloc(len*sizeof(char)); /*为新的字符串分配空间*/
resultStr=str1;
while(*backup) *str1++=*backup++;
while(*str2) *str1++=*str2++;
*str1='\0';
return resultStr;
}
main()
{
char *s1="hello ";
char *s2="world!";
printf("%s\n",StrCatenate1(s1,s2));
printf("%s",StrCatenate2(s1,s2));
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询