A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

      struct  student{              char name[20];
               int  age;
      };
      struct  student d[2];
       d[0]={"liy",19};


       d[1]={"yn",19};
   有没有哪位高手知道为什么后两句不对?为什么非要进行强制转换才行?d[0]=(struct  student){"liy",19};
       d[1]=(struct  student){"yn",19};

3 个回复

倒序浏览
结构体的赋值必须是struct student d = {“lili”,18},单个赋值的时候可以直接用点调用 d.name ="lili"的形式
回复 使用道具 举报
小笼包 发表于 2015-9-5 19:52
结构体的赋值必须是struct student d = {“lili”,18},单个赋值的时候可以直接用点调用 d.name ="lili"的 ...

我问的不是这个,是为什么有个强制转换符才能赋值
回复 使用道具 举报
编译器不知道你给的值是什么类型,要在前面说明一下
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马