vc MFC串口通信接收到的字符串中提起字符为什么无效
if(m_Comm.GetCommEvent()==2) //接收缓冲区内有字符
{
m_input1=m_Comm.GetInput(); //读取缓冲区内的数据
m_input2=m_input1; //将VARIANT型变量转换为ColeSafeArray型变量
length=m_input2.GetOneDimSize();//确定数据长度
for(i=0;i<length;i++)
m_input2.GetElement(&i,data+i); //将数据转换为BYTE型数组
for(i=0;i<length;i++) //将数组转换为Cstring型变量
{
BYTE a=* (char *)(data+i);
if(m_hex.GetCheck())
str.Format("%X ",a);
else str.Format("%c",a);
m_ReceiveData+=str;
}
if(m_ReceiveData[0]=='7')//&&m_ReceiveData[length-1]==0xE
biaozhi=1;// 当检查到字符串中第一个字符为7时,便使biaozhi”产生为1(以定义biaozhi为bool刑变量)
else biaozhi=0;
}
请大侠指点一二!!!!!
[解决办法]
要么:
if(m_ReceiveData.GetAt(0)=='7')
...