CString与wchar_t[]的赋值问题

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

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

以下是代码  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是写日志的,前面的那行日志写出来了,后面的没执行,所以肯定是赋值出错了

用CStringW,可以接受wchar_t数组

使用copy构造函数代替

sFSURTData.strSamplingTime = CString(SResultOfFSUNHT.wchSamplingTime);