簡體   English   中英

010 編輯器模板:將 int 轉換為 wchar_t

[英]010 Editor template: convert a int to wchar_t

我正在以這種方式從 010 模板中的二進制文件中讀取單個wchar_t字符

wchar_t character;

它會給我例如@的64 ,之后我需要將0x20添加到64,所以現在應該是96
我的問題是如何在 010 模板中再次add操作后的輸出轉換為 wchar_t(或字符串)?

據推測,您正在添加0x20以將大寫 ASCII 字母轉換為小寫。 在這種特定情況下,它是安全的,只要這是針對 ASCII 范圍內的代碼點。

但是這些操作通常是無效的。 UTF16 對某些代碼點使用代理對,每個代碼點可以是 2 wchar_t 因此,例如在 Windows 中,代碼點由 2 字節或 4 字節表示,您不能亂用一半。

使用_strlwr_strlwr將字符串轉換為小寫。

如果讀取 0 到 128 之間的 ASCII 字符,則保證這些字符不是代理字符。 例如,如果您正在尋找\\n \\t A . , ; : ,這很容易\\n \\t A . , ; : \\n \\t A . , ; : \\n \\t A . , ; :

如果可用,請使用towlower ,並使用wprintf打印wchar_t

wint_t wch = towlower(L'A');
wprintf(L"%c", wch);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM