首先你知道0-65535这个数字是怎么来的么?
其实65535其实就是2的16次方,也就是两个2的8次方——也就是2个字节(Byte),所以说,一个char占用2个字节就是这个取值范围的由来。
而数据类型这些东西,其实已经是程序语言范畴里的概念了,而机器语言只有0和1,所以你这样在取值范围里去想存的是什么,实际上是混淆了这些概念。
你可以理解成,字符是一种“标准”,使用码表可以实现字符和数值的转换,这些是软件层面上实现的,取值范围则是硬件原理上决定的。至于计算机怎么知道你存的是数字还是字符什么的解释起来就太多了,你必须学完进制和内存操作等内容后结合各种码表标准的具体实现来看。。
你要想学好,所有的基础内容都很重要,打好基础后面才能事半功倍 |