gpt4 book ai didi

c++ - std::string 到 LPCTSTR

转载 作者:可可西里 更新时间:2023-11-01 12:36:46 25 4
gpt4 key购买 nike

std::string如何转换为LPCTSTR典型问题的新版本。

阅读不同的 SO 帖子,我了解到我应该这样做:

CreateDirectory(path.c_str(),NULL);

编译器仍然报错,因为无法从 const char * 转换为 LPCTSTR

我试过:

CreateDirectory((LPCTSTR)path.c_str(),NULL);

没有错误!

仍然创建的目录(在正确的位置)被称为:

D:\\something\\㩄ぜ弲久䅓余屓䱆彄湡敤屲䵉ⴱ㠶ⴰⵃㅇ㉜洰⵭就䥄牃獥汵獴촀췍췍췍췍췍췍췍﷍﷽꯽ꮫꮫꮫﺫﻮﻮ

这不是我想要的,你可以猜到...

那我错过了什么?它与 UNICODE/ANSI 相关吗?我该如何解决这个问题?

最佳答案

尝试查看此页面:What-are-TCHAR-WCHAR-LPSTR-LPWSTR-LPCTSTR-etc .如果您使用的是 MSVC,那么您可能已经为项目设置了 Unicode,并且 LPCSTR 被“翻译”为 const wchar_t *,这与 const char * 不兼容

通过执行此操作:(LPCTSTR)path.c_str() 您将从原始字符串中获取两个字符并从中创建一个 unicode wchar_t 字母。这就是您获得“中文”字符的方式。

关于c++ - std::string 到 LPCTSTR,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16711124/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com