strcat(char[] a,char []b)即将第二个字符串追加到第一个字符串末尾,第二个字符串值不变,第一个变长。
你的理解是对的 但是使用有误!追加时需要保证第一个字符串在加上第二个之后依旧不能溢出。在此题中,你的a[]字符串长度在追加上"txt"之后,会溢出,建议在定义a的时候写上char a[100]保证不溢出。
1
2
3
char a[100];
scanf("%s",a);
strcat(a,"txt");#include <stdioh>
char Strcat(char str1,char str2)
{
char tempt = str1;
while(str1!='\0')
{
str1++;
}
while(str2!='\0')
{
str1 = str2;
str1++;
str2++;
}
str1 = '\0';
return tempt;
}
int main()
{
char a[20] = "hello";
char b[20] = ",everyOne!";
printf("%s",Strcat(a,b));
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)