指向flash的指针如何清零啊?

[复制链接]
2188|10
 楼主| 28182900 发表于 2013-6-5 12:54 | 显示全部楼层 |阅读模式
如:const unsigned char*  pBuffer = (const unsigned char*)0x08000c00;

如何在N个++后,对pBuffer清零?
LDTEST 发表于 2013-6-5 14:18 | 显示全部楼层
直接pBuffer= NULL 就行了,这里是不能修改 *pBuffer
 楼主| 28182900 发表于 2013-6-7 13:29 | 显示全部楼层
LDTEST 发表于 2013-6-5 14:18
直接pBuffer= NULL 就行了,这里是不能修改 *pBuffer

不行啊,pBuffer= NULL后pBuffer等于0了。不对的,我是要他变回原来的地址
LDTEST 发表于 2013-6-7 14:17 | 显示全部楼层
28182900 发表于 2013-6-7 13:29
不行啊,pBuffer= NULL后pBuffer等于0了。不对的,我是要他变回原来的地址

原来什么地址?  0x08000c00 ? 重新赋值就是了
 楼主| 28182900 发表于 2013-6-7 14:22 | 显示全部楼层
报错的会
 楼主| 28182900 发表于 2013-6-7 14:26 | 显示全部楼层
LDTEST 发表于 2013-6-7 14:17
原来什么地址?  0x08000c00 ? 重新赋值就是了

会报错
LDTEST 发表于 2013-6-7 14:31 | 显示全部楼层
28182900 发表于 2013-6-7 14:26
会报错

怎么重新赋值 ,报什么错 发出来
 楼主| 28182900 发表于 2013-6-7 14:36 | 显示全部楼层
本帖最后由 28182900 于 2013-6-7 14:38 编辑
LDTEST 发表于 2013-6-7 14:17
原来什么地址?  0x08000c00 ? 重新赋值就是了

pBuffer = 0x800fc00;
Error[Pe513]: a value of type "int" cannot be assigned to an entity of type "unsigned char const *"
LDTEST 发表于 2013-6-7 14:41 | 显示全部楼层
28182900 发表于 2013-6-7 14:36
pBuffer = 0x800fc00;
Error: a value of type "int" cannot be assigned to an entity of type "unsigned ...

你就不能强制转换下么

pBuffer =(const unsigned char*) 0x800fc00;

初始化的时候还用了的
 楼主| 28182900 发表于 2013-6-19 19:30 | 显示全部楼层
LDTEST 发表于 2013-6-7 14:41
你就不能强制转换下么

pBuffer =(const unsigned char*) 0x800fc00;

大锅。。。还有个问题。
n = *pBuffer++;为什么执行这个语句后 pBuffer指针的地址从0x0800FC26变为0x0800FC28了?
直接偏移2位,这是怎么回事儿?stm32不是一个地址16位的吗?
zeluo 发表于 2013-6-20 07:42 | 显示全部楼层
帮你顶一个    楼主  
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:工作永远干不完,生命却一直在倒计时

100

主题

1127

帖子

2

粉丝
快速回复 在线客服 返回列表 返回顶部