问题标签 [tchar]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
362 浏览

c++ - 从 TCHAR 到 std::string 的转换,不是使用 WideCharToMultiByte?

我必须将 TCHAR 变量(使用 OpenBrowseDir 检索到的路径)转换为 std::string。我目前正在使用此代码。我正在使用 WideCharToMultiByte。

在我的项目中,TCHAR 是 wchar_t。

在 OpenBrowseDir 中,我打开了一个浏览对话框,以便用户可以选择一个目录。我正在使用变量 BROWSEINFO bi,bi.pszDisplayName 的类型为 TCHAR。

还有其他更好的解决方案吗?

0 投票
2 回答
1109 浏览

c++ - TCHAR 数组的深拷贝被截断

我创建了一个类来测试我需要使用的一些功能。本质上,该类将获取传入字符串的深层副本,并通过 getter 使其可用。我正在使用 Visual Studio 2012。在项目设置中启用了 Unicode。

问题是 memcpy 操作产生了一个截断的字符串。输出是这样的;

其中第一行是对传入的 TCHAR* 字符串的检查,第二行是使用 memcpy 操作填充分配的内存的输出。预期的输出是;“测试测试 123”。

谁能解释这里有什么问题?

注意从这里得到#ifndef UNICODE typedef:how-to-convert-tchar-array-to-stdstring

0 投票
2 回答
3425 浏览

c++ - TCHAR 指针初始化

我试图理解以下代码:

我知道 TCHAR 是 Char(ANSI 格式)或 wChar(Unicode 格式),基本上是一个 1 字节或 2 字节的容器,代表某些东西。

现在,如果我声明一个指向名为 portName 的 const TCHAR 的指针,那么 portName 就是一个指针。当我使用“=”符号时,我给该指针一个值,对我来说,“COM15”是地址似乎是不合理的。我假设那行代码给了我一个指向“COM15”字符串开头位置的指针,对吗?

那么那行代码中实际发生了什么?

是否正在创建一个字符串(“COM15”),并且“=”符号实际上意味着该字符串的开头位置被赋予了 portName?

0 投票
1 回答
680 浏览

c++ - _tcstok_s 中的多字符分隔符

尽管对于不同的语言有类似的问题,但我找不到这个特定问题的重复项。

我正在尝试将字符串拆分为标记,其中我的分隔符是两个字符的字符串。

我的问题是: 1. 是否可以使用 _tcstok_s 来执行此操作,因为 MSDN 说它需要一组字符作为分隔符,它将匹配任何这些字符?2. 如果用_tcstok_s 无法做到这一点,任何其他可以做到的功能。我的字符串是 TCHAR,我想尽可能多地使用内置函数。

谢谢!

0 投票
1 回答
1180 浏览

c++ - 使用 ATL 将 LPTSTR 转换为 LPWSTR

假设我有这个:

我可以使用其中一个ATL 转换宏, CT2CW,并且该函数按预期工作:

但是,如果我有这样的事情:

现在WString不包含我期望的内容;它似乎只是包含垃圾。我确信这是一些时髦的指针业务,但我很难过。

0 投票
2 回答
746 浏览

c# - 通过streamwriter将C#字符串编组为C++ tchar

相关问题

在 C++ 中,我需要一个 TCHAR 字符串 (LPTSTR)。C# StreamWriters 可以输出 ASCII、Unicode、UTF32 等...不是 TCHAR 字符串。

我不是在 C++ 中调用函数,而是通过命名管道发送字符串消息。

C#:

C++ 需要一个 TCHAR。建议?

0 投票
1 回答
765 浏览

c++ - 将 CHAR 转换为 TCHAR 的最快和优雅的方式

我通常需要将 CHAR 或 CHAR* 转换为 TCHAR 或 TCHAR*

在不使用 ATL 或其他 Microsoft 库的情况下,有没有更好、最快的方法?谢谢你。

0 投票
1 回答
708 浏览

c++ - 在 mbstowcs_s 函数 SizeInWords 参数的上下文中,单词的大小是多少?

在 Windows API 函数 mbstowcs_s 的上下文中,我很难确定 Word 的确切大小。这是来自 MSDN 的相关信息以及链接。

mbstowcs_s, _mbstowcs_s_l

将多字节字符序列转换为相应的宽字符序列。mbstowcs 的版本,_mbstowcs_l 具有安全增强功能,如 CRT 中的安全功能中所述。

参数

[out] pReturnValue - 转换的字符数。

[out] wcstr - 转换后的宽字符串的缓冲区地址。

[in] sizeInWords - wcstr 缓冲区的大小(以字为单位)。

[in] mbstr - 以 null 结尾的多字节字符序列的地址。

[in] count - 存储在 wcstr 缓冲区中的最大宽字符数,不包括终止的 null 或 _TRUNCATE。

这是 MSDN 页面的链接:https ://msdn.microsoft.com/en-us/library/eyktyxsx.aspx

有任何想法吗?

0 投票
4 回答
8914 浏览

c++ - 无法在 MFC / C++ 项目中将参数 1 从“const wchar_t *”转换为“LPCTSTR”

我得到一个编译错误就行了:

我不知道如何解决这个错误,我尝试了以下方法:

我正在使用“使用多字节字符集”设置,我不想更改它。

0 投票
1 回答
1288 浏览

c++ - std::vector 中的奇怪字符

尝试获取所有子目录,并最终获取子目录中的所有文件,并且我将 std::vector 作为对实际获取所有目录的函数的引用传递。我可以在函数内计算 cFileName 但是一旦它返回 main 向量就会有奇怪的字符。

目前让我的字符集使用 Unicode。当我使用多字节时,它实际上会打印奇怪的字符,现在它什么也不打印了。向量中确实有一些东西(directories.size() 返回值 > 0)

实在想不出别的了。希望这是一个很好的问题,哈哈。谢谢