Cod*_*edd -2 c++ locale wchar-t memcpy
当我尝试在wchar_t字符串上使用memcpy时遇到错误。具体地说,尽管我发送给memcpy的长度与我要复制的字符串的长度正确,但仅复制了字符串中的前半个字符。这给我留下了目标字符串中不好的数据,因为字符串的后半部分充满了从字符串的新创建中遗留下来的垃圾字符。
下面的屏幕截图显示了我正在处理的确切问题:
我唯一能想到的是,这可能与我将非Unicode应用程序的语言环境设置为日语有关,但我要做的第一件事是将语言环境改回英语,问题仍然存在。我觉得我确实缺少一个非常明显的解决方案。有任何想法吗?
memcpy
占用多个字节,而不是多个对象memcpy
使用wcslen(src) + 1
,有wcscpy
new wchar_t[]
那里std::wstring
。如果您m_pTextures
选择了vector
,std::wstring
那么您的代码将更加简单,并且不容易出现此类错误。
归档时间: |
|
查看次数: |
1022 次 |
最近记录: |