用CString出现的怪问题

shanyang1 shanyang1 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
某个类a下面若干个cstring成员
a.str1
a.str2
a.str3
...
...
...
然后这些成员的值会在某个函数bbb()里被改变
比如变成
a.str1 = "1号"
a.str2 = "2号"
a.str3 = "3号"
...
...
...
然而,当这个bbb()执行完毕并返回上一层调用函数后(注意跟踪到bbb的return前,这些值都还正常的),这些值统统前移一位变成了
a.str1 = "2号"
a.str2 = "3号"
a.str3 = "4号"
...
...
...
a.strn = "口"

最后一个a.strn本来应该是"n号“,却变成一个”口“字一样的乱码
请问什么原因,该怎么解决?
...全文

相关推荐

CString操作大全指南

CString 对象的连接;格式化字符串(包括 int 型转化为 CString );CString 型转化成 int 型;CString 型和 char* 类型的相互转化;char* 转化成 CString;CString 转化成 char* 之一:使用LPCTSTR强制转化;CString 转化成 char* 之二:使用String对象的GetBuffer方法;CString 转化成 char*之三;和控件的接口;CString 型转化成 BSTR 型;BSTR 型转化成 CString 型;VARIANT 型转化成 CString 型;载入字符串表资源;CString 和临时对象;CString 的效率;

zrx281731

MFC 数值转换 CString >> HEX>>DEC>> CString

在MFC通信模块中经常会遇到数据类型的转换,比如会收到下位机的数据(如:10 20 30 40 64 DD ),需要在Dailog中显示'0x64'为'100 Dec',那必须先从CString >> HEX>>DEC>> CString 实行代码如下: CString readData; char readChar='64'; readData.Format("X ",readChar); // 0D>>0x64, str>>hex CString strDec, strHex; strHex = readData; DWORD dwHex = strtoul(strHex, NULL, 16); strDec.Format(_T("%ld"), dwHex); MessageBox (strDec); //0X64>>100, hex >> dec >>str 其他相关转换 如:char to CString, CString to int/long/double 见附件

power_fdnotion

CString转UTF8,UTF8转CString

CString转UTF8,UTF8转CString。

坐忘凡尘

string、cstring 、char* 转化问题

字符串之间的转化问题一直令人头痛,本文对此提出了不同的解答

zhengge007

CString和string对象

CString对象和string对象的相互转化问题,以及他们呢的用法

howeverwho
评论 27
收藏 已收藏
分享
返回顶部
shanyang1
VC/MFC 16,550 成员 421,606 内容