回复:& 与*的关系

hezk

  • 帖子

    371
  • 精华

    2
  • 被关注

    28

论坛等级:侠士

注册时间:2003-06-06

普通 普通 如何晋级?

发布于 2015-07-18 00:55:22

5楼

展开查看
以下是引用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里的数据。
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-200

共有33266条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
X 图片
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。