注: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的地址。
上一篇:枚举在单片机编程的应用
下一篇:单片机低功耗设计小结
推荐阅读最新更新时间:2024-03-16 15:35
设计资源 培训 开发板 精华推荐
- 柔灵科技陈涵:将小型、柔性的脑机接口睡眠设备,做到千家万户
- 微灵医疗李骁健:脑机接口技术正在开启意识与AI融合的新纪元
- USB Type-C® 和 USB Power Delivery:专为扩展功率范围和电池供电型系统而设计
- 景昱医疗耿东:脑机接口DBS治疗技术已实现国产替代
- 首都医科大学王长明:针对癫痫的数字疗法已进入使用阶段
- 非常见问题解答第223期:如何在没有软启动方程的情况下测量和确定软启动时序?
- 兆易创新GD25/55全系列车规级SPI NOR Flash荣获ISO 26262 ASIL D功能安全认证证书
- 新型IsoVu™ 隔离电流探头:为电流测量带来全新维度
- 英飞凌推出简化电机控制开发的ModusToolbox™电机套件
- 意法半导体IO-Link执行器电路板为工业监控和设备厂商带来一站式参考设计