C++中如何使用通用字符名输入UNICODE字符

一、如何使用通用字符名输入一个UNICODE字符

在C++中,可以使用通用字符名来输入一个UNICODE字符。
通用字符名的用法类似于转义序列,可以用\u或者\U开头,\u后面是8个十六进制位,\U后面则是16个十六进制位。这些位表示的是字符的ISO 10464码点。
为了备忘,以下代码详列了整数字面值和字符常量的各种表示方法(其中使用通用字符名方法见代码中字符常量表示方式5).

#include <iostream>
#include <tchar.h>

int main()
{
	//整形字面值(常量)是显式书写的常量。C++能够以三种不同的计数方式来书写整数:基数为10、基数为8、基数为16.
	//C++使用前1或者2位来判断数字常量的基数。如果第一位为1~9,则基数为10;如果第一位是0,第2位是1~7,则基数为8;
	//如果前两位为0x或者0X,则基数为16.
	int int1, int2, int3;
	int1 = 0x41;	//十六进制字面值
	int2 = 0101;	//八进制字面值
	int3 = 65;		//十进制字面值

	//字符常量的五种表示方式
	char ch1, ch2, ch3, ch4;
	wchar_t ch5;
	//方式1:
	ch1 = 'A';
	//方式2
	ch2 = 65;
	//方式3:用八进制转义序列,格式为 \ooo,包含一个反斜杠和最多3位八进制数字。注意:这个八进制前面的0可以省略
	//Octal escape sequences, specified in the form \ooo, consist of a backslash and one, two, or three octal characters. 
	ch3 = '\101';
	//方式4:用16进制转义序列,格式为 \xhhh,包含一个反斜杠和若干十六进制数字。不像八进制序列,十六进制的长度没有限制。
	//Hexadecimal escape sequences, specified in the form \xhhh, consist of the characters \x followed by a sequence of hexadecimal digits. 
	//Unlike octal escape constants, there is no limit on the number of hexadecimal digits in an escape sequence. 
	ch4 = '\x41';
	//方式5:使用通用字符名
	//C++有一种表示UNICODE字符的机制,使用通用字符名。通用字符名的用法类似于转义序列。通用字符名可以用\u或者\U开头。
	//\u后面是8个十六进制位,\U后面则是16个十六进制位。这些位表示的是字符的ISO 10464码点。
	ch5 = _T('\u33A1');	//注意,等号右边的字符常量必须是宽字符常量,否则编译器会赋一个错误值

	//最后,在标识符中也可以使用通用字符名
	int iSpecialName\u33A1=3;
	std::cout << iSpecialName\u33A1 << std::endl;
}

二、常用的UNICODE特殊符号

序号具体符号Unicode
1\u33A1
2×\u00D7
3\u2265
4\u2264
5\u223D
6δ\u03B4
7·\u00B7
8÷\u00F7
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

_Santiago

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值