【问题标题】:Convert WCHAR to LPCTSTR将 WCHAR 转换为 LPCTSTR
【发布时间】:2018-06-02 17:12:13
【问题描述】:

对于CSocket,我想使用 IP 地址进行连接。

CSocket client;
client.Create();
client.Connect(IP, 80);

但是IP 被定义为WCHAR ip[16];

client.Connect(IP, 80) 要求 IPLPCTSTR 类型

如何从WCHAR 转换为LPCTSTR

【问题讨论】:

标签: c++ sockets winapi mfc


【解决方案1】:

如果您为 Unicode 字符集构建(就像任何比大约 2000 年更新的 Windows 程序一样),LPCTSTR 将是 LPCWSTR aka wchar_t const * 的 typedef,而 wchar_t[] 数组将衰减到那个.

如果您为多字节字符集构建,则必须转换您的数据。我建议为此使用CW2T()(它实际上是一个类,但几乎总是用作临时对象),例如:

client.Connect(CW2T(ip), 80);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-11-10
    • 2016-06-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-12-14
    • 2011-05-04
    • 1970-01-01
    相关资源
    最近更新 更多