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;
}
uj5u.com熱心網友回復:
什么叫 int 1*n ,i; ?int n,i;
uj5u.com熱心網友回復:
一般是變數不支持這種操作導致,或者變數定義錯誤uj5u.com熱心網友回復:
錯誤不少!
#include <stdio.h>
#include "string.h"
#include "stdlib.h"
char *my3cat(char *a,char *b,char *c)
{
unsigned int n,i;
char *p;
if (!a || !b || !c) return NULL;
//
n=strlen(a)+strlen(b)+strlen(c);
//
if((p=(char*)malloc(n+1))==NULL)
{
printf("Application memory failure...\n");
return NULL;
}
//
n=0;
for(i=0;i<strlen(a);p[n++]=a[i++]);
for(i=0;i<strlen(b);p[n++]=b[i++]);
for(i=0;i<strlen(b);p[n++]=c[i++]);
return p;
}
int main(void)
{
char a[100],b[100],c[100];
char *p=0;
printf ("Input 3 strings...< 100 each!\n");
scanf("%s%s%s",a,b,c);
p=my3cat(a,b,c);
if(p) printf("The result is %s\n",p);
free(p);
return 0;
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/113981.html
標籤:基礎類
上一篇:MFC.exe換一臺電腦無法使用
下一篇:各位大神幫幫忙
