wangdoc/clang-tutorial

pointer.md章节-指针的运算

lxjme opened this issue · 0 comments

lxjme commented

short* j;
j = (short*)0x1234;
j = j + 1; // 0x1236
j = j + 2; // 0x1238
对于加1的结果解释是“向高位移动两个字节”(这句话是不是有点问题?);
两个字节对于二进制来说是16位,意思是向高位即左移动16位吗?
我将0x1234转换成二进制是0001001000110100,0x1236转换成二进制是0001001000110110,也就是说加1在二进制层面来说是加了10,加2是二进制上面是加了100,这样理解才对吧?
以上是我的一些想法,有说的不对的地方,望老师不要介意 :)