展开查看
以下是引用Chian SIEMENS在2015-07-17 22:53:18的发言 >4楼:1.假设我 &vb100 vb100里面的数据现在是1 结果是多少呢 真心弄不明白 用在那些场合
2.假设*vb200 vb200 里面是2 结果是2 这样做意义在哪
1、&vb100后得到的是一个双字节数据,就是vb100的地址。用指针的好处就是数据使用起来更方便,比如我要把vb100到vb200之间每个vb里的数值加起来,那么只要得到vb100的地址,然后该地址加1就是vb101的地址了,再加1就是vb102的地址。这样只要使用循环就可以完成累加这个功能而不是机械的一个个调用vb100、vb101、vb102......去相加了。
注意&取得是首字节地址,所以&vb100、&vw100和&vd100得到的都是一个地址,即vb100的地址。
2、*配套的要使用双字节才行,因为地址是32位的,所以需要*vd200而不能是*vb200。假设刚才&vb100得到的地址存在vd200里,现在move *vd200 vb0,vb0里的数据vb100里的数据1。如果move *vd200 vw0,vw0里的数据就是vw100里的数据。