error C2106:'=' : left operand must be l-value是什么错误,请帮忙
error C2106:'=' : left operand must be l-value是什么错误,请帮忙
下面是代码
#include <stdio.h>
#include "string.h"
#include "stdlib.h"
char *my3cat(char *a,char *b,char *c)
{
int 1*n ,i;
char *p;
if (!a || !b || !c)
return NULL;
1*n=strlen(a)+strlen(b)+strlen(c);
if((p=(char*)malloc(sizeof(char)*1*n+1))=NULL)
{
printf("Application memory failure...\n");
return NULL;
}
for(i=1*n=0;a[i];p[1*n++]=a[i++]);
for(i=0;b[i];p[1*n++]=b[i++]);
for(i=0;p[1*n++]=c[i++];);
return p;
}
int main(void)
{
char a[100],b[100],c[100],*p;
printf ("Input 3 strings...\n");
scanf("%100s%100s%100s",a,b,c);
printf("The result is %s\n",p=my3cat(a,b,c));
free(p);
return 0;
}
下面是代码
#include <stdio.h>
#include "string.h"
#include "stdlib.h"
char *my3cat(char *a,char *b,char *c)
{
int 1*n ,i;
char *p;
if (!a || !b || !c)
return NULL;
1*n=strlen(a)+strlen(b)+strlen(c);
if((p=(char*)malloc(sizeof(char)*1*n+1))=NULL)
{
printf("Application memory failure...\n");
return NULL;
}
for(i=1*n=0;a[i];p[1*n++]=a[i++]);
for(i=0;b[i];p[1*n++]=b[i++]);
for(i=0;p[1*n++]=c[i++];);
return p;
}
int main(void)
{
char a[100],b[100],c[100],*p;
printf ("Input 3 strings...\n");
scanf("%100s%100s%100s",a,b,c);
printf("The result is %s\n",p=my3cat(a,b,c));
free(p);
return 0;
}
...全文


