vb 显示数据用浮点数表示

来源:百度知道 编辑:UC知道 时间:2024/05/26 20:18:01
Dim x1, k1, k2
Dim p11, p22 '定义变量
Dim aa() As Byte '定义数组
--------------------------------
Private Sub Timer1_Timer()
MSComm1.PortOpen = True
ReDim aa(0 To 5)
k1 = 0
If k1 = 0 Then MSComm1.Output = "1" + Chr(10) + Chr(13)
Do While MSComm1.InBufferCount = 0
Loop
aa = MSComm1.Input
If aa(0) > 64 Then GoTo xxx:
k2 = Int(aa(0) * 255 + aa(1) * 1)
Select Case k2
Case 1
p11 = Int(aa(2) * 255 + aa(3) * 1)
p22 = Int(aa(4) * 255 + aa(5) * 1)
Case Else
End Select
k1 = k1 + 1
If k1 > 2 Then k1 = 0
xxx:
MSComm1.PortOpen = False
End Sub
-------------------------------
如何让p11和p22显示浮点数?
请高手帮帮忙,回答一下!!!<

LZ:浮点数请参阅http://blog.csdn.net/zdingyun/archive/2008/06/09/2528026.aspx
我的BLOG"VB的浮点数处理"
从你的代码看p11及p22都是2字节组成,那应该是Integer数据类型:
Option Explicit
Dim buffer(1) As Long
Dim aa(1) As Byte
Dim p11 As Integer
Dim i As Integer
Private Sub Command1_Click()
aa(1) = 128
aa(0) = 28
For i = 0 To 1
buffer(i) = aa(i)
Next
If buffer(0) > 127 Then
p11 = buffer(0) * 256 + buffer(1) - 65536
Else
p11 = buffer(0) * 256 + buffer(1)
End If
Text1 = p11
End Sub

浮点?单精度!,双精度#
你用int就是取整