完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
typedef struct {...}*Pstr; 这个指针怎么用法?
举一个相似的例子,一般指向整型的指针都是如下使用的:int *p ; 指向一个整型的指针。如果,在前面我们使用了 typedef int * Pint;则上面的声明方法,可以改为: Pint p;同样是声明一个指向整型的指针。上面的结构体是一样的。也同样理解。例如:tyoedef int *Pint;表示的意思并不是定义一个指向int型指针,而是表示定义一种新的数据类型,这种类型是指向int型的指针,那么如果下面有Pint a;则这时的a是指向int型指针同理typedef struct {...}*Pstr; 表示定义一种数据类型,该类型是指向结构体的所以下面如果有*Pstr p;则p是一个指向结构体的指针但是很显然p是悬垂指针,而题中这种情况是不能静态分配数据的所以可以动态的分配一个空间来让p有所指向C++可以这么做:p=new *pC没有new语句,那么可以这么做:p=(Pstr)malloc(sizeof(*p)); |
|
相关推荐
2个回答
|
|
typedef struct {...} * Pstr; 之后Pstr才量新类型,而不是*Pstr。那么"*Pstr p"是什么意思哦?应该用“Pstr p”吧。
|
|
|
|
|
|
|
|
只有小组成员才能发言,加入小组>>
12195 浏览 2 评论
4516 浏览 3 评论
3764 浏览 5 评论
9790 浏览 47 评论
4603 浏览 9 评论
758浏览 0评论
568浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-31 01:56 , Processed in 0.538472 second(s), Total 55, Slave 47 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号