gpt4 book ai didi

C++ 如何将 wchar_t* 转换为 TCHAR [](不是 TCHAR*)

转载 作者:行者123 更新时间:2023-11-28 05:27:08 25 4
gpt4 key购买 nike

我想为一个大单元添加一个小的附加选项,所以我不想处理大量代码。

TCHAR szTempFileName[MAX_PATH];
TCHAR lpTempPathBuffer[MAX_PATH];
int uRetVal = 0;
GetTempPath(MAX_PATH, // length of the buffer
lpTempPathBuffer); // buffer for path
GetTempFileName(lpTempPathBuffer, // directory for tmp files
TEXT("QRCode_"), // temp file name prefix
0, // create unique name
szTempFileName); // buffer for name

我想将 szTempFileName 更改为可选的 wstring/std::string/wchar_t* parametr 。

解决方法:

  1. 将 TCHAR 更改为 wchar_t

  2. wcscpy(wchar_t[], wchat_t*);

最佳答案

通常,根本没有理由使用TCHAR。如果您正在使用 wchar_t,只需调用 Unicode variants通过添加 W 后缀直接使用 Winapi 函数:

// Use wchar_t instead of TCHAR.
wchar_t szTempFileName[MAX_PATH];
wchar_t lpTempPathBuffer[MAX_PATH];
int uRetVal = 0;
// Call GetTempPathW directly.
GetTempPathW(MAX_PATH, lpTempPathBuffer);
// Use L"..." instead of TEXT("...").
GetTempFileNameW(lpTempPathBuffer, L"QRCode_", 0, szTempFileName);

关于C++ 如何将 wchar_t* 转换为 TCHAR [](不是 TCHAR*),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40304272/

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