1

通过串口读取数据时

VARIANT data;
BSTR k;
if(m_mscom.GetCommEvent() == 2)
{
    data = m_mscom.GetInput();      
    k = data.bstrVal;
    }

什么是BSTR k;,你是什么意思k=data.bstrVal?是什么bstrVal

4

2 回答 2

1

BSTRVARIANT是 COM 中使用的数据类型。实际上,VARIANT 是一个可以容纳任何 COM 数据类型的容器。

在您的情况下, GetInput() 返回包含缓冲区作为 BSTR 的 VARIANT,因此必须使用 bstrVal 来检索它。

于 2008-12-19T07:31:02.287 回答
0

BSTR 是指向 unicode 字符的指针(只是可以保存 unicode 字符的字符类型)。data.bstrVal 将变体转换为 BSTR。

于 2008-12-19T07:30:01.913 回答