我有一个 TCHAR 和如下值:
TCHAR szDestPathRoot[MAX_PATH]="String This";
现在我想要 TCHAR 中的第一个三个字符,如下所示:
szDestPathRoot.substring(0,2);
我该怎么做。
最佳答案
TCHAR[]
是一个简单的空终止数组(而不是 C++ 类)。因此,没有“.substring()”方法。
TCHAR[]
(根据定义)可以是宽字符串 (Unicode) 或简单的字符字符串 (ASCII)。这意味着每个字符串函数都有 wcs
和 str
等价物(wcslen()
vs strlen()
等) ETC)。以及一个不可知的编译时 TCHAR
等价物,可以是/或。
strncpy()
的 TCHAR
等价于 tcsncpy()
。
最后警告:要声明一个 TCHAR
文字,最好使用 _T()
宏,如以下代码片段所示:
TCHAR szDestPathRoot[MAX_PATH] = _T("String This");
TCHAR szStrNew[4];
_tcsncpy (str_new, szTestPathRoot, 3);
您可能会对这些链接感兴趣:
关于c++ - 我怎样才能对 TCHAR 进行子字符串化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4039850/