文件存取法:
程序A:(放在一个过程里,比如Text1_Change)
Open "E:\通信文件.txt" For Output As #1
Print #1,Text1.Text
Close #1
程序B:(放在一个过程里,比如Timer1_Timer,或者Command1_Click)
On Error Resume Next
Err.Clear
Open "E:\通信文件.txt" For Input As #1
If Err.Number = 0 Then
Text1.Text=""
While Not EOF(1)
Line Input #1,Tempstr
Text1.Text = Text1.Text &Tempstr &vbCrLf
Wend
End If
Close #1
Kill "E:\通信文件.txt"
Err.Clear
注册表写入法:
程序A:(过程中)
SaveSetting "通信小程序","自定义通讯","通讯1",Text1.Text
程序B:(过程中)
If GetSetting("通信小程序","自定义通讯","通讯1","无消息1") <>GetSetting("通信小程序","自定义通讯","通讯1","无消息2") Then
Text1.Text=GetSetting("通信小程序","自定义通讯","通讯1")
DeleteSetting "通信小程序","自定义通讯","通讯1"
End If
这样即可~
推荐:注册表写入法更方便(不受文件存取限制,因为写入的是用户区域,也不会导致不安全现象~)
基恩士plc两个程序可以进行代码对比。对于PLC来说,有在线和离线两种程序,对应的程序比较也有两种:离线-在线、离线-离线。进行代码对比。
想了解更多信息,欢迎咨询研祥金码。深圳市研祥金码科技有限公司(以下简称“Regem Marr研祥金码”)是研祥高科技控股集团旗下专业从事机器视觉业务的全资子公司。研祥集团作为中国企业500强,持续运营30年。研祥集团全球49个分支机构,三个国家级创新平台,一直致力于技术创新引领行业发展,拥有超1100项授权专利,超1300项非专利核心技术。
Regem Marr研祥金码业务主要涵盖新能源、锂电、半导体、电子元件、包装、家用电器、汽车、食品、医药、物流及自动化设备等领域。
第二个程序括号中的float 是强制转换为float的意思。因为U R1 R2 R3都是整数,那么进行整除后U/R1,U/R2,U/R3这是三个数也都是整数,所以第一个程序的 I是三个整数相加得到的,虽然i是float型的浮点数,但是因为后边的加数都是四舍五入后得到的整数,所以这个I肯定也是个可以整除1的数。
但是第二个程序中,在(float)U/R1这样就不能是整除了,float把U强制传化为了浮点数,浮点数除以整数,得到的结果是浮点数,不用像四舍五入为整数,所以第二个程序中的I是三个浮点数相加得到的。
如上边 ,第一个程序是两个整数相触,属于整除概念,200/30 结果是6
但是第二个程序中 (float)200/30 结果是 6.66666.....
所以最后相加的结果一定不同。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)