要求VC串口每接收一次数据,显示在不同的编辑框中,但结果都显示在一个中,请教如何解决?flag应该放在哪? 10

staticunsignedintflag;flag=0;CStringm_edit;m_edit.Format(("%d"),myData);intdata=atoi(... static unsigned int flag;
flag=0;
CString m_edit;
m_edit.Format(("%d"),myData);
int data=atoi(m_edit);
if(flag==0&&data!=11)
{
m_edit1.Format(("%d"),myData);
switch(data)
{
case1:
{
GetDlgItem(IDC_EDITR1)->SetWindowText(m_edit1);
break;
}
case2:
{
GetDlgItem(IDC_EDITR1)->SetWindowText(m_edit1);
break;
}
case3:
{
GetDlgItem(IDC_EDITR1)->SetWindowText(m_edit1);
break;
}
case4:
{
GetDlgItem(IDC_EDITR1)->SetWindowText(m_edit1);
break;
}
case5:
{
GetDlgItem(IDC_EDITR1)->SetWindowText(m_edit1);
break;
}
case6:
{
GetDlgItem(IDC_EDITR1)->SetWindowText(m_edit1);
break;
}
case7:
{
GetDlgItem(IDC_EDITR1)->SetWindowText(m_edit1);
break;
}
case8:
{
GetDlgItem(IDC_EDITR1)->SetWindowText(m_edit1);
break;
}
case9:
{
GetDlgItem(IDC_EDITR1)->SetWindowText(m_edit1);
break;
}
case10:
{
GetDlgItem(IDC_EDITR1)->SetWindowText(m_edit1);
break;
}
}
}
elseif(data==11)
{
flag=1;
}

if(flag==1&&data!=11)
{
m_edit2.Format(("%d"),myData);
switch(data)
{
case1:
{
GetDlgItem(IDC_EDITR2)->SetWindowText(m_edit2);
break;
}
case2:
{
GetDlgItem(IDC_EDITR2)->SetWindowText(m_edit2);
break;
}
case3:
{
GetDlgItem(IDC_EDITR2)->SetWindowText(m_edit2);
break;
}
case4:
{
GetDlgItem(IDC_EDITR2)->SetWindowText(m_edit2);
break;
}
case5:
{

GetDlgItem(IDC_EDITR2)->SetWindowText(m_edit2);
break;
}
case6:
{
GetDlgItem(IDC_EDITR2)->SetWindowText(m_edit2);
break;
}
case7:
{
GetDlgItem(IDC_EDITR2)->SetWindowText(m_edit2);
break;
}
case8:
{
GetDlgItem(IDC_EDITR2)->SetWindowText(m_edit2);
break;
}
case9:
{
GetDlgItem(IDC_EDITR2)->SetWindowText(m_edit2);
break;
}
}
}
elseif(data==11)
{
flag=2;

}
展开
 我来答
White_MouseYBZ
2012-07-07 · TA获得超过4万个赞
知道大有可为答主
回答量:2.1万
采纳率:82%
帮助的人:6521万
展开全部
把你的代码直接改成如下看看……
static unsigned int flag;
flag=0;
CString m_edit;
m_edit.Format(("%d"),myData);
int data=atoi(m_edit);
if(flag==0 && data!=11){
m_edit1.Format(("%d"),myData);
GetDlgItem(IDC_EDITR1)->SetWindowText(m_edit1);
}
else if(data==11) flag=1;

if(flag==1 && data!=11){
m_edit2.Format(("%d"),myData);
GetDlgItem(IDC_EDITR2)->SetWindowText(m_edit2);
}
else if(data==11) flag=2;
僧修敏T7
2012-07-07 · 超过48用户采纳过TA的回答
知道小有建树答主
回答量:207
采纳率:0%
帮助的人:85.8万
展开全部
不明白为啥非要用switch语句
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式