C++拆分宽字符字符串
C++ Split Wide Char String
我正在尝试将宽字符字符串拆分为数组,这是我这样做的方式:<>
WCHAR* Message = _T("This is a sample text"):
wchar_t *pwc;
CStringArray Command;
pwc = wcstok(Message, L" ");
int Count = 0;
while (pwc != NULL) {
pwc = wcstok(NULL, L" ");
Command.Add(pwc);
Count++;
}
for (int i = 0 ; i <= Count ; i++)
{
AfxMessageBox(Command[i]);
}
问题是我的最终结果数组
中没有"This"怎么了?
您需要在
分配之前将调用移动到Command.Add
循环中的pwc
- 就目前而言,您在执行第一个Add
之前移动到第二个令牌。
我对你的来源没有任何问题。所有字符串组件都打印完美。
这是我的完整工作代码:
#include "stdafx.h"
#include <wchar.h>
int main(int argc, char *argv[])
{
wchar_t wcs[] = L"This is a sample string";
wchar_t *pwc;
pwc = wcstok(wcs, L" ");
while (pwc != NULL) {
wprintf(L"%lsn", pwc);
pwc = wcstok(NULL, L" ");
}
}
相关文章:
- 如何将一个ostringstream十六进制字符串字符对转换为单个unit8t等价的二进制值
- 尝试将字符串/字符转换为整数会产生意外结果
- 为什么没有访问所有字符串字符?
- 将子字符串字符从字符串值转换为 int,然后将其分配给 int 变量
- 如何将字符串字符与结构数组进行比较?
- 将单个字符串/字符输入串行监视器
- 读取字符串字符时出错 - 对于数组中的字符串值
- C++ C 样式字符串/字符数组的大小 - 优化
- 读取字符串字符时出错
- C++ 使用 Strtok 读取字符串字符时出错
- 如何将 int 数组的 1 个元素转换为字符串/字符
- 在另一个字符串中逐个复制字符串字符
- 将字符串字符映射到矢量
- MBED RTOS将Float转换为字符串/字符阵列
- 如何使用字符串字符数组中的 ++ 运算符访问下一个字符串
- 如何比较C++中的单个字符串字符?
- 内部字符串/字符如何在 int 和 float 中存储
- 将十六进制转换为可打印的字符串/字符
- wcscpy_s后读取字符串字符时出错
- 检查字符串字符和长度