首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何复制LPCWSTR?

如何复制LPCWSTR?
EN

Stack Overflow用户
提问于 2013-11-11 06:55:38
回答 3查看 8.7K关注 0票数 5

复制LPCWSTR字符串需要采取哪些步骤?

考虑一下这个案例:LPCWSTR str = L"Copy me";

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2013-11-11 06:57:28

使用wcscpy()。以下是MSDN文档:

http://msdn.microsoft.com/en-us/library/kk6xf663(v=vs.90).aspx

一个更安全的变体是wcscpy_s()。您必须分配一个足够大的缓冲区,以便预先保存副本:

代码语言:javascript
复制
   LPCWSTR str = L"Copy me";
   std::vector<wchar_t> thecopy( wcslen(str) + 1 ); // add one for null terminator
   wcscpy_s(thecopy.data(), thecopy.size(), str);

   // you can get a pointer to the copy this way:
   LPCWSTR *strCopy = thecopy.data();

Wcscpy_s()的文档可以在这里找到:

http://msdn.microsoft.com/en-us/library/td1esda9(v=vs.90).aspx

票数 4
EN

Stack Overflow用户

发布于 2013-11-11 06:57:39

使用wcscpy

代码语言:javascript
复制
LPWSTR wcscpy(LPWSTR szTarget, LPWCSTR szSource);

目标是非恒定宽字符串(LPWSTR),源是恒定宽字符串.

LPCWSTR被定义为

代码语言:javascript
复制
typedef const WCHAR* LPCWSTR;

LP指针 C-常数 WSTR -宽字符串

票数 2
EN

Stack Overflow用户

发布于 2013-11-11 09:07:23

假设LPCWSTR等同于const wchar_t *,那么对于GNU系统,您可以使用wcsdup()

代码语言:javascript
复制
wchar_t * wcsdup(const wchar_t * s);

该函数也由POSIX.1-2008定义。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19900525

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档