我想打印 Unicode 字符的范围,从 00B2 到 00B5(以及许多其他范围),如何以编程方式打印这些?
显然,我不知道如何定义一个可变的Unicode字符,然后对它们进行算术(增量)。
我正在寻找与下面等效的循环。
如何以编程方式打印任意范围的 Unicode 字符?
#include <iostream>
int main() {
std::cout << "\u00B2" << std::endl;
std::cout << "\u00B3" << std::endl;
std::cout << "\u00B4" << std::endl;
std::cout << "\u00B5" << std::endl;
}
输出(unicode字符)
²
³
´
µ
不确定我是否正确理解你的问题。但是,您可以通过使用循环并递增 Unicode 代码点以编程方式实现此目的。下面是一个 C++ 示例:
上面的代码使用wchar_t表示宽字符,使用std::wcout表示宽字符输出。std ::locale::global(std::locale(""))行将全局区域设置设置为用户的默认值,这是根据用户环境正确显示 Unicode 字符所必需的。
您可以从 utf-8 进行编码/解码:
进而
或者
演示