回复:(boot2046)呵呵,括号在这没什么影响的我是在...
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
void StrCatenate(char *s1,char *s2);
int main()
{
char *str1,*str2;
str1=(char*)malloc(sizeof(char)); //就分配了一个字节,这段程序也实现了字符串的连接
str2=(char*)malloc(sizeof(char));
printf("Please input str1:\n");
scanf("%s",str1);
printf("Please input str2:\n");
scanf("%s",str2);
StrCatenate(str1,str2);
printf("result=%s\n",str1);
return 0;
}
void StrCatenate(char *s1,char *s2)
{
s1+=strlen(s1);
while((*s1=*s2)!='\0')
{
s1++;
s2++;
}
}
str1=(char*)malloc(sizeof(char));
str2=(char*)malloc(sizeof(char));
就分配了一个字节,程序怎么会通过呢?运行结果正确!!