为了账号安全,请及时绑定邮箱和手机立即绑定

为什么出现错误typedef char extra[20];

为什么出现错误typedef char extra[20];

婷婷同学_ 2022-07-01 11:07:42
typedef char extra[20];paixu(extra *name,extra *xuehao,int score[9999][4],int Number){int i,j,k,change[9999][4];char xuehao1[9999],name1[9999];extra a,b;for(i=1;i<Number;i++){for(j=0;j<3;j++)score[i][3]+=score[i][j];}for(i=0;i<Number-1;i++){k=i;for(j=i+1;j<Number;j++){if(score[k][3]<score[j][3])k=j;else if(score[k][3]==score[j][3]){if(xuehao+k>xuehao+i)k=j;}}if(k!=i){memcpy(change[i],score[i],4*sizeof(int));memcpy(score[i],score[k],4*sizeof(int));memcpy(score[k],change[i],4*sizeof(int));a=*(xuehao+i); //error C2106: '=' : left operand must be l-value*(xuehao+i)=*(xuehao+k); //error C2106: '=' : left operand must be l-value*(xuehao+k)=a; //error C2106: '=' : left operand must be l-valueb=*(name+i); //error C2106: '=' : left operand must be l-value*(name+i)=*(name+k); //error C2106: '=' : left operand must be l-value*(name+k)=b; //error C2106: '=' : left operand must be l-value}}我就发了其中一个函数,这个函数目的是把总成绩排序。最上面一行是说明一下extra函数怎么来的,怕看不懂,我想问我标注的问题怎么解决。
查看完整描述

1 回答

?
胡说叔叔

TA贡献1804条经验 获得超8个赞

a=*(xuehao+i); //error C2106: '=' : left operand must be l-value
*(xuehao+i)=*(xuehao+k); //error C2106: '=' : left operand must be l-value
*(xuehao+k)=a; //error C2106: '=' : left operand must be l-value
b=*(name+i); //error C2106: '=' : left operand must be l-value
*(name+i)=*(name+k); //error C2106: '=' : left operand must be l-value
*(name+k)=b; //error C2106: '=' : left operand must be l-value

以上这些都是字符串 不能直接赋值 用 strcpy函数
如: strcpy(a,*(xuehao+i)); 等..

查看完整回答
反对 回复 2022-07-05
  • 1 回答
  • 0 关注
  • 139 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号