爱问知识人 爱问教育 医院库

字符串变量赋值问题

首页

字符串变量赋值问题

VC中可否这样?
CString strNMEAData;
strNMEAData="0xAA"+"0x55"+strdata+"*"+c1+c2+cr
直接将十六进制数赋给字符串类型的变量 

提交回答
好评回答
  • 2018-04-08 05:09:34
    你希望写得表达式是:
    strNMEAData=0xAA+0x55+strdata+"*"+c1+c2+cr
    吧?
    那只能很遗憾告诉你,不能。
    你可以自己写一个转换的函数,或重载+运算符的其他数值类型的连接。
    C++中的CString类中的+运算符只能连接两个CString对象或char[]数组。而0xAA是byte型,而byte型并没有CString的默认转换,所以需要你自己定义一个转换,将byte数值转换成CString的对象或char[]。
    给你提供一个解决方法试试:
    char cp1[2],cp2[2];
    cp1[0]=0xAA;cp1[1]=0;
    cp2[0]=0x55;cp2[1]=0;
    strNMEAData= cp1 + cp2 +strdata+"*"+c1+c2+cr
    

    黄***

    2018-04-08 05:09:34

类似问题

换一换

相关推荐

正在加载...

热点检索

  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 175-194
返回
顶部
帮助 意见
反馈

确定举报此问题

举报原因(必选):