java和C中基本数据类型的所占字节数对比

 

java 语言所占字节数

数据类型32位计算机64位计算机
byte11
char22
int 44
long88
float44
double88
引用48

 

 

c  语言所占字节数

数据类型32位计算机64位计算机
byte11
char22
int 44
long48
float44
double88
char*(以及其他指针)48

 

java 除了引用类型所占字节与机器字长相关,其他的 32位和 64位 都一样!!

但是 c语言中 long 和 char* 取决于机器字长,并且长度与机器字长等长 ,  C 语言的指针类型针对不同的机器字长,所占字节数不一样,我可以理解为操作系统为 内存条编址, 4字节指针只能编址 0~ 40亿(也就是4G 内存)而在64位机上4字节不够用, 必须用8 字节,但是C  语言中的 long  类型 在 64位机上 用  8 字节就不明白啦?????

 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值