2019-07-20 23:26发布
李韬sust 发表于 2019-6-22 17:04 您好谢谢您的回答,可是我还是不太懂32位的地址值强制转换为16位的地址(是不是意味着丢掉高16位的地址值 ...
warship 发表于 2019-6-22 21:21 MCU的地址都是32位的, 地址(或说是指针)可以指向各种类型, 可以是8位变量、16位变量、32位变量、结构 ...
最多设置5个标签!
你是真的没有搞清楚地址的含义,
不是把32位的地址值强制转换为16位的地址
是把32位的数值强制转换为32位的地址(这个地址指向16位的变量)
一点损失都没有!!!
地址(或说是指针)可以指向各种类型,
可以是8位变量、16位变量、32位变量、结构变量、函数入口、另一指针等等,
非常非常广泛和灵活,指针是C语言的精华,一定要搞懂。
一个指针被确定类型后,从这个指针取出的就是它指向类型的长度,
如果一个指针(对于MCU一定是32位长度的)指向的是16位变量(如vu16),
则从这个指针取出的就一定是一个16位值。
好的我知道了谢谢
一周热门 更多>