c语言数据类型在内存中的存储方式

c语言数据类型在内存中存储方式

关于这个问题,这两天一直在思考,声明一个变量的数据类型,肯定是在内存中有记录,否则怎么表示为此类型呢?
网上的多数的解释不够详尽,大概意思就是说,数据类型与数据存储无关,内存里只有数本身,我最初看的时候有点奇怪,我觉得肯定是有一个地方存储吧。
曾经学习51单片机,使用的是汇编,这里的数据类型存储,应该是占用一个单元(大概是我也记不太清了)。但是c与汇编其实本质一样,最终都是机器码,所以c中数据类型总归会占用一个地方的内存。
这是哪里呢,没错就是指令,指令给cpu命令,让cpu去调用这个地址的数据,这个数据在指令中才解释为某个数据类型。
这就很神奇了,因为所有数据类型的数在内存中与类型并不是绑定,所以理论上讲,应该是可以有方法取出某个数据的另一个类型的形式。而且这个是已经声明的变量!

例如:
int a=11; 也就是00001011
但是我通过一个指令,把这个数据用另一种方式从内存里拿出来用,理论上完全可行,o(∩_∩)o 哈哈神奇。
神不知鬼不觉,就好像国际乱码大赛的unix[a]一样。

不过我c刚开始学习,以后了解到了继续分享!

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值