gpt4 book ai didi

c++ - 如何在 C++ 中将 LPOLESTR 转换为 char*

转载 作者:搜寻专家 更新时间:2023-10-31 01:43:13 25 4
gpt4 key购买 nike

当我尝试使用 CDynamicStringAccessor 从我的存储过程中检索“列名”然后写入我的 csv 文件的第一行时,我必须处理从 LPOLESTR 到 char* 的转换或 std::string。

经过一番研究,我终于找到了最简单的方法。我会尽快发布答案,希望这对遇到同样问题的人有所帮助。

最佳答案

您可以使用 ATL conversion macros .这些临时从栈中分配:

USES_CONVERSION;

std::string my_string = OLE2CA(the_lpolestr);

另见答案 here对于某些替代方案,因为 OLECHAR 自 1995 年左右以来就是 wchar_t

一个重要的替代方法是按原样实际使用宽字符串而不对其进行转换(转换要么丢失信息,要么生成一个 UTF-8 字符串,它可能适合也可能不适合您要使用它的用途) .

关于c++ - 如何在 C++ 中将 LPOLESTR 转换为 char*,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25599245/

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