首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VB >

VB中利用串口发送浮点数,也就是实现C语言中union解决办法

2012-01-15 
VB中利用串口发送浮点数,也就是实现C语言中union在VB中如何发送一个浮点数,例如-7.738263E-09如何通过串口

VB中利用串口发送浮点数,也就是实现C语言中union
在VB中如何发送一个浮点数,例如   -7.738263E-09     如何通过串口(mscomm控件发送,在另一端使用单片机接收。我知道在VC中只要使用
union
{
        char   temp[4];
        float   num;
}at;
at.num   =     -7.738263E-09;
利用
        CByteArray   array;          
        array.RemoveAll();
        array.SetSize(Count);
        for(i=0;i <4;i++)
                array.SetAt(i,   at.num[i]);

        m_Comm.SetOutput(COleVariant(array));   //   发送数据
但是在VB中如何实现呢?求助呀。

[解决办法]
Option Explicit

Private Declare Sub CopyMemory Lib "kernel32 " Alias "RtlMoveMemory " (pDst As Any, pSrc As Any, ByVal ByteLen As Long)


Dim a As Single, Buffer(3) As Byte

a = -7.738263E-09
CopyMemory Buffer(0), a, 4
MSComm1.Output = Buffer

热点排行
Bad Request.