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

请问以下4种关于struct的定义和使用有什么区别么?

请问以下4种关于struct的定义和使用有什么区别么?

茅侃侃 2019-04-08 11:16:43
请问以下代码有什么区别么,4种方法做的同样的事情。另外请问newuser中的name是一个指针,在用的时候需要先malloc分配内存么?我在下面的例子中直接赋值了,从结果上看并没有什么问题。C语言新手,感谢关注。#include#include#includetypedefstructuser{charname[20];intage;}user;typedefstructuser2{char*name;intage;}newuser;intmain(){//示例1useru1;u1.age=18;strlcpy(u1.name,"xiaoming",sizeof(u1.name));printf("u1:age=%d,name=%s\n",u1.age,u1.name);//示例1-2user*u2;u2=(user*)malloc(sizeof(user));u2->age=18;strlcpy(u2->name,"xiaoming",sizeof(u2->name));printf("u2:age=%d,name=%s\n",u2->age,u2->name);//示例2newuseru3;u3.age=18;u3.name="xiaoming";printf("u3:age=%d,name=%s\n",u3.age,u3.name);//示例2-2newuser*u4;u4=(newuser*)malloc(sizeof(newuser));u4->age=18;u4->name="xiaoming";printf("u4:age=%d,name=%s\n",u4->age,u4->name);return0;}
查看完整描述

2 回答

  • 2 回答
  • 0 关注
  • 271 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信