【发布时间】:2013-11-24 04:35:55
【问题描述】:
我有一个包含路径的 TCHAR 字符串。我需要将路径中所有出现的/ 替换为\。保存路径的变量定义如下:
TCHAR mypath[1024];
如果mypath 包含C:/new/newfile/a.txt,那么我需要将/ 替换为\,以便生成的字符串变为C:\new\newfile\a.txt。
另外,我需要适配的文件已经有UNICODE定义如下:
#ifndef UNICODE
#define UNICODE
#endif
像wcsncmp 这样的函数已被用于字符串比较。如何在 TCHAR 字符串中实现字符替换?
【问题讨论】:
-
为什么首先使用
TCHAR[]?坚持使用std::wstring并使用std::replace。 -
是的,现在 TCHAR 已经过时了。在现代 C++ 程序中没有理由这样做。
-
@john 我没有看到任何地方指定这是一个现代 C++ 程序。也许他正在维护一个旧程序。
标签: c++ visual-c++ wchar-t wchar tchar