用MSComm控件的事件驱动方式进行数据的接收,接收到的数据怎样存储到数组中呢?
void CSCommTestDlg::OnComm() //接收数据处理
{
// TODO: Add your control notification handler code here
//try{
VARIANT variant_inp;
COleSafeArray safearray_inp;
LONG len,k;
BYTE rxdata[2048]; //设置BYTE数组 An 8-bit integer that is not signed.
CString strtemp;
if(m_ctrlComm.GetCommEvent()==2) //事件值为2表示接收缓冲区内有字符
{
//在这里加上数据存储到数组的函数么?
}
UpdateData(FALSE); //更新编辑框内容
}
可以加一个整数索引,对加入的数据长度进行标识。更好的是对这个数据进行扩展,变成一个堆栈,对其进行操作。
#include<stdio.h>