如何检测 W2A 转换是否完全成功
How to detect if W2A conversion is fully successful
在这里您可以看到,当您从宽转换为窄时,某些符号可能会被?
替换。如何检测对字符串应用 W2A 转换时的这些情况。往返转换是一种方式,但速度不快。我想在转换 W2A 函数时应该以某种方式标记转换不完全可能。如何获取这些信息?
编辑:例如在以下情况下
int WideCharToMultiByte(
UINT CodePage,
DWORD dwFlags,
LPCWSTR lpWideCharStr,
int cchWideChar,
LPSTR lpMultiByteStr,
int cbMultiByte,
LPCSTR lpDefaultChar,
LPBOOL lpUsedDefaultChar
);
最后一个论点是告诉我需要什么。W2A呢?如何侦查案件?
要检查这一点,请直接使用 WideCharToMultiByte。您指示在那里使用了默认字符,并且您有影响转换过程的标志。
W2A
使用相同的 API,dwFlags
为零,lpUsedDefaultChar
为 NULL,因此根本不查询您需要的信息。
相关文章:
- 是否可以从int转换为enum类类型
- 是否可以将llvm::FunctionType转换为C/C++原始函数指针
- 将QOpenGLWidget子类转换为使用Metal而不是OpenGL的子类是否可行?
- 是否应避免从非常量迭代器转换为常量迭代器?
- 是否有内置方法可以强制转换为不同的基础类型,但保留常量限定符?
- 是否可以将带有字符串化运算符的宏转换为 constexpr?
- 将INT32BE宏转换为 constexpr 是否正确?
- 如果整数与指针大小相同,则重新解释将整数转换为指针双射是否具有双射作用?
- 如何将 UTF-8 文本从文件转换为某个可以迭代的容器,并检查每个符号是否为C++字母数字?
- 是否可以在运行时强制转换模板参数?
- 错误:在尝试检测 std::cout 是否<< t 时,功能强制转换为数组类型;有效
- 将 C 函数转换为 C++ 以检查数字是否有效
- 是否可以将无符号 int 的最大值转换为 int 并将结果转换为 -1?
- 虚拟成员函数的定义是否强制在同一转换单元中动态初始化静态数据成员?
- vec[i][j] 是否转换为 *(vec + i + j)?
- 隐式转换是否应该在模板参数的上下文中工作?
- 是否可以创建一个用户定义的文本,将字符串文本转换为 own 类型的数组?
- 是否可以将已经初始化的变量转换为 void*?
- 在比较过程中C++布尔值是否转换为整数
- 如何正确地从字符数组中删除字符(是否转换为字符串)