永发信息网

VC++中文本框中的数字数据,怎么以十六进制发送出去?如输入50发送32出去。

答案:2  悬赏:10  手机版
解决时间 2021-02-25 01:22
VC++中文本框中的数字数据,怎么以十六进制发送出去?如输入50发送32出去。
最佳答案
CString cs("");
cs.format("%x",50);//或者你需求的变量名,或者("%x %x %x",x1,x2,x3);
char *snd=(LPSTR)(LPCSTR)cs;
然后你自己发送吧追问额,能不能具体点,,感觉看不懂,你这个能让文本框里的东西发送出去么?追答晕,刚才没注意,你是写串口,你只需要把上面的4个数据用atoi转换成int类型就可以了,

先从文本框读出字符串,然后用atoi转换成数字 char c1=(char)( atoi((LPSTR)(LPCSTR)cs));
然后发送,
int len=StrToHex(m_StrTempAndRh,data);//这个函数是自己写的吧,data返回的是什么?
m_SerialPort.WriteToPort(data,len);//这个没学过,是这里出的错误吗?你用断点调试下看看追问对我自己写的,但是我的达不到要求,,,,虽然能发送文本框的内容,但是不能加上头/数据位/设备类型/设备编号这几位,

我想这样把头/数据位/设备类型/设备编号这几位,加进去,但是。。。我觉得这样不科学

追答你的StrToHex里的str是一个cstring类
怎么能用str[i]-'0',用下标i去访问?你的编译器没有报错吗?
你的错误提示框提示的是内存访问越界了,
你先用断点调试,一步步跟踪到底是哪里出现的这个问题
这个问题,完全可以用debug的调试模式找出问题出在哪里.你如果不会调试,可以百度一下,有不少完整的教程
全部回答
为什么要转换,硬件只识别二进制,不需要任何转换
数据包就像堆砖,想想怎样堆砖,很简单的
你的贴的代码就算不出错,数据也不能还原
出错原因是数据长度大于4
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
求搞笑奖项名称,公司年终设立了苹果5s,ipad
某工程项目时标网络图如下图所示,则()。
Miss花先生咖啡吧地址在哪,我要去那里办事
谁知道,《柠檬树》这首歌的英文版歌词?
一共5题C#程序阅读题望高人解答,谢谢!
小孩不是我的,但我以父亲的名义办的出生证明,
长征有多少歌?
辞职报告怎么写呀?最好简短一点的
APP数量有多少?
启东市第三人民医院口腔诊所地址在什么地方,
古墓里的砖上有花纹和图案是什么朝代的长30CM
C语言 求出1~100所有数的所有因子 比如 9 的
随身wiFi在步步高家教机上H9可以用吗?
肥仔尚佳二手车行在哪里啊,我有事要去这个地
预授权与结账的问题
推荐资讯
中国现在还有蒸汽机车吗
2010年捷达现在值多少钱
华硕电脑经营部地址在什么地方,想过去办事
无结婚证没迁户口,只办了酒席没多长时间分手
材料一据联合国跨国公司中心统计,目前世界有
单选题用干冰灭火是因为①可降低可燃物着火点
柳岩有没有老公
为什么10000mah的充电宝贵过20000mah的充电宝
汀兰巷地址在什么地方,想过去办事
写人物外貌、动作、一件事情的作文
荣锋汽车服务部地址在什么地方,想过去办事
新疆大学哪个专业好
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?