SXQ080824405
2015-01-03 05:09
采纳率: 0%
浏览 4.7k

CString与wchar_t[]的赋值问题

敝人正在调试一个程序,现遇到一问题求大牛解答
我将一个wchar_t[50]的变量赋值给一个CString的变量
编译时能过,但程序运行到这个赋值语句时程序挂了
sFSURTData.strSamplingTime = SResultOfFSUNHT.wchSamplingTime
这两个变量都是属于结构体里的成员

  • 写回答
  • 好问题 提建议
  • 关注问题
  • 收藏
  • 邀请回答

4条回答 默认 最新

  • 91program 2015-01-03 05:21

    wchar_t 到 CString 的赋值,应该直接将 wchar_t 赋值给 CString 就可以。
    但必须保证 wchar_t 的变量有字符串结束符哦,否则真会出现程序挂掉的问题。

    评论
    解决 无用
    打赏 举报
  • SXQ080824405 2015-01-03 05:34

    以下是代码  CNHLogAPI是我们公司内部用的一个类
    case 1:

            {
                sFSURTData.fYD = (float)_wtof(SResultOfFSUNHT.wchValue1);
                CNHLogAPI::WriteLog(L"采样时间", strMsg, SResultOfFSUNHT.wchSamplingTime1);
                sFSURTData.strSamplingTime = SResultOfFSUNHT.wchSamplingTime1/*SResultOfFSUNHT.wchSamplingTime1*/;
                CNHLogAPI::WriteLog(L"一组数据获取完成", strMsg, strMsg);
                break;
            }
    
            WriteLog是写日志的,前面的那行日志写出来了,后面的没执行,所以肯定是赋值出错了
    
    评论
    解决 无用
    打赏 举报
  • oyljerry 2015-01-03 05:39

    用CStringW,可以接受wchar_t数组

    评论
    解决 无用
    打赏 举报
  • Coursera 2015-01-04 00:49

    使用copy构造函数代替

    sFSURTData.strSamplingTime = CString(SResultOfFSUNHT.wchSamplingTime);

    评论
    解决 无用
    打赏 举报

相关推荐 更多相似问题