独闷闷网

 找回密码
 立即注册
搜索
查看: 2720|回复: 0
收起左侧

[原创] 指针的寻址范围跟指针的类型有关吗,指针变量占用多少个字节?已解答。

[复制链接]
发表于 2016-3-19 15:56:40 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
本帖最后由 jianhong_wu 于 2017-6-4 12:40 编辑

问:
指针的寻址范围跟指针的类型有关吗,指针变量占用多少个字节?

★坚鸿-深圳:

指针是一种特殊变量,它是由C编译器根据芯片硬件寻址范围而决定的,在一个相同的C编译器系统中,所有类型的指针所占用的字节数都是一样的,比如8位单片机的C51编译器系统中,unsigned char *,unsigned int *,unsigned long *都是一样占用3个字节。而32位单片机的指针往往都是4个字节,而某些64位的PC机,指针可能是8个字节。

hippo-深圳:
keilC51把指针其实也可以设计成2字节,这样就只能在64KB范围。定3字节原因是keilC51有bank技术,可以超过64KB寻址,一个bank就是64KB。。。 编译器有时也不会严格遵循ANSI-C,最明显的就是P0^1这种,把C标准^位异或都改了。



乐于分享,勇于质疑!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|独闷闷网 ( 粤ICP备12007667号-2 )

GMT+8, 2024-12-4 15:04 , Processed in 0.183707 second(s), 18 queries .

快速回复 返回顶部 返回列表