中易网

定义结构体指针变量和定义结构体普通变量的区别

答案:2  悬赏:40  
解决时间 2021-10-09 01:52
定义结构体指针变量和定义结构体普通变量的区别
最佳答案
我个人认为当你定义了一个结构指针后,程序实际只是给指针本身分配了机器字长宽度的空间,用来存储一个地址,如果是全局变量或者静态变量的话,默认初始化为0。
结构指针是用来存储将来你真正结构的地址的,而当你刚刚定义指针时,它是没有指向任何结构的,对于你定义的这个指针,它本身的内容实际是0。
而结构变量就不一定了,如果你定义了一个结构变量,那它本身就分配了内存,当然它的内部变量也是分配了内存的。
所以当你定义结构变量时,由于m.fld[0]是有实际地址和空间的,当你strcpy时,就是完全合法的操作,而如果你只定义了指针,并没有分配实际的结构内存,所以当你strcpy的时候,是将数据COPY到0地址,当然访问0地址违法的。 祝你好运一生一世!点击好评,谢谢你!
全部回答
当你定义了一个结构指针后,程序实际只是给指针本身分配了机器字长宽度的空间,用来存储一个地址,如果是全局变量或者静态变量的话,默认初始化为0。 结构指针是用来存储将来你真正结构的地址的,而当你刚刚定义指针时,它是没有指向任何结构的,对于你定义的这个指针,它本身的内容实际是0。 而结构变量就不一定了,如果你定义了一个结构变量,那它本身就分配了内存,当然它的内部变量也是分配了内存的。 所以当你定义结构变量时,由于m.fld[0]是有实际地址和空间的,当你strcpy时,就是完全合法的操作,而如果你只定义了指针,并没有分配实际的结构内存,所以当你strcpy的时候,是将数据COPY到0地址,当然访问0地址违法的。
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
也是的意思是什么?也是的释义是什么啊?
门头沟有没有好吃的饭馆?
涿州那个快递公司既便宜服务又好呀?
深圳景山花园二手房房价如何?户型有哪些呢?
如何布置浪漫房间?
100平方房子装修价格是多少,谁知道
顺丰快递昨天晚上10点在苏州。今天能否到张家
深圳布吉二手房装修,布吉德兴花园装修?如何
给宝宝洗澡的时候要注意些什么?
开青椒鱼馆的利润有多少
十堰圆通快递位置。张湾青年广场巷2号,在哪?
大庆油田招09应届本科生子女到公司报到后何时
1990年6月初5生辰八字是什么
人要怎样才能活得久一点
启迪方洲售楼处房价每平多少钱?
推荐资讯
有什么网站可以投简历的啊?
在做月子期间吃营养品的同时,要注意哪些该吃
滁州是哪里的
乐平市驾校科目二考场地址有知道的么?有点事
砖砌体工程质量验收规范谁能提供?有没有人知
济南展台展柜制作
谁用过有效的戒烟产品请推荐下。
欧式风格装修预算怎么计算?不同档次费用差别
东昏的意思是什么?东昏的释义是什么啊?
谁个讲解下老面馒头的做法,要一次做15公斤面
铨轴的意思是什么?铨轴的释义是什么啊?
危足的意思是什么?危足的释义是什么啊?
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?