MFC中,在函数中定义了一个CString strtemp变量用于缓存接收到的数据,Edit框定义变量m_display。

假设接收到10个字节的数据,我想把第1和第2字节的数据在Edit框中显示,请问将strtemp变量中第1、2字节的值赋给m_display变量的语句怎么写?... 假设接收到10个字节的数据,我想把第1和第2字节的数据在 Edit 框中显示,请问将strtemp变量中第1、2字节的值赋给m_display变量的语句怎么写? 展开
 我来答
ohyourdog
2011-06-14 · TA获得超过821个赞
知道小有建树答主
回答量:298
采纳率:50%
帮助的人:367万
展开全部
CString csTemp;
csTemp = strtemp.GetAt(1); //获得strtemp中前两个字符
SetDlgItemText(EDIT_ID,csTemp); //将获得的字符显示在ID为EDIT_ID的控件里
追问
谢谢!我还有些问题不太明白。假如我想直接去第4字节的变量,应该怎么表达啊?另外,我用的是UpdateData(False)语句使Edit框显示的,跟你 SetDlgItemText(EDIT_ID,csTemp);  这种方法有什么区别啊?
追答
Updatedata(TRUE) == 将控件的值赋值给成员变量,即从窗口编辑框中读入数据;
和GetDlgItemText沒區別

Updatedata(FALSE) == 将成员变量的值赋值给控件,将数据从窗口显示。
和SetDlgItemText沒區別

至于你說的取第四個字節的東西,建議你看看CString的一些方法,或者看看如何解析字符串。這些東西用的很多,而且只能自己多積累。
解決你的問題的方法,你可以把數據放在char數組里,直接取數組下標取值,然后轉換一下就可以了。
百度网友5120c2ff9
2011-06-14
知道答主
回答量:37
采纳率:0%
帮助的人:22.9万
展开全部
memcpy()试试,还有一个是m_display.Format("%C%C",strtemp[0],strtemp[1]);
好久没用,只记得大概是这样
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式