老师在讲字符类型(比特类型)转化为十进制(整型)的时候有问题吧?也就是课程中"int rs3=(int)((arr[3]&0xff)<<3*8)"有问题吧?比特类型只有1两字节也就是16位,那么arr[3]怎么能够左移3*8=24位呢?只是因为十进制的8143对应的二进制的最高十六位都是0,也就是arr[3]=arr2]=0000 0000(b).所以”左移24位“之后再强制转化为Int类型时还是等于0,因为恰好掩盖了这个错误吧?
2016-03-23