完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
|
相关推荐
1个回答
|
|
指针与变量
注:keil中单片机C编程 若指针没有指向提前声明的变量,会产生混乱 eg: 情景一: 情景二: Type *p,*q; Type *p,*q,pp,qq; 给指针p赋值; p=&pp; 给指针q赋值; q=&qq; p或q的值会出问题 正常,没问题(Type为一结构体) 结论:情景二中,是指针使用的规范过程,先分配了变量,然后指针指向变量。 情景一中则没有定义变量,直接用指针操作,出现错误,原因:因为指针只是用来存储变量的地址,指针作为局部变量被存储在内存的栈中,由于没有为指针赋值,那么指针变量内存储的内容是随机的,所以造成混乱。 关于指针自身地址和指针所指地址 keil中单片机C编程 rf_packet_info *buff,buffer; uart_sendbyte(buff); uart_sendbyte(&buff); uart_sendbyte(&buffer); buff=&buffer; uart_sendbyte(buff); uart_sendbyte(&buff); uart_sendbyte(&buffer); 烧写后第一次运行串口结果: 03 21 27 27 21 27 第一次之后的输出结果: 27 21 27 27 21 27 结论:uart_sendbyte(buff) 指针buff内所存的内容,即所指变量的地址,指针在被赋值前其值是随机的; uart_sendbyte(&buff) 指针自身的地址; uart_sendbyte(&buffer) 变量buffer的地址。 |
|
|
|
只有小组成员才能发言,加入小组>>
2549 浏览 0 评论
1148浏览 2评论
747浏览 1评论
500浏览 0评论
266浏览 0评论
429浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-22 16:46 , Processed in 1.336530 second(s), Total 80, Slave 62 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号