wchar_t数据类型如何工作
how wchar_t data type working c?
我知道这不是一个内置的数据类型。在c++中,我知道我们可以创建一个看起来和行为几乎类似于基本数据类型的数据类型。但是在C中,我不明白它是如何与基本数据类型相似的。
I know it is not a standard data type
是的,它的标准(在<stddef.h>
中描述)
wchar_t整型,其值范围可以表示最大字符集的所有成员的不同宽字符代码在编译环境支持的语言环境中指定:null字符的代码值为0,并且可移植字符集的代码值与其使用时的值相等作为整型字符常量中的唯一字符。
But in C I don't understand how it works similar to basic data type.
使用wchar.h header
在C语言中,wchar_t
是<stddef.h>
(可能还有其他头文件)中定义的整数类型的typedef。
见标准第7.17节(http://port70.net/~nsz/c/c99/n1256.html#7.17)
wchar_t
是一个整数类型,其取值范围可以表示在支持的语言环境中指定的最大扩展字符集的所有成员的不同代码;null字符的代码值应为0。
c++ 11和C11标准都承认wchar_t
为"宽字符"标准数据类型。
wchar_t
的语义:
类型是[…])和
wchar_t
这是一个整数类型,其值范围可以表示在支持的语言环境中指定的最大扩展字符集的所有成员的不同代码;null字符的代码值应为0。基本字符集的每个成员当用作整数中的唯一字符时,应具有与其值相等的代码值字符常量,如果实现没有定义__STDC_MB_MIGHT_NEQ_WC__
.
而c++ 11标准在3.9.1/5中说:
类型
wchar_t
是一个不同的类型,其值可以表示最大的所有成员的不同代码在支持的语言环境中指定的扩展字符集(22.3.1)。类型wchar_t
应具有相同的大小、签名和对齐要求(3.11)作为其他整型之一,称为其底层类型。[…]
- QSqlquery prepare()和bindvalue()不工作
- 导入库可以跨dll版本工作吗
- 以螺旋方式打印矩阵的程序.(工作不好)
- 对象指针在c++中是如何工作的
- 为什么在Windows上的VS 2019和Clang 9中"size_t"在没有标题的情况下工作
- VSOMEIP-2个设备之间的通信(TCP/UDP)不工作
- 为字符串中每 N 个字符插入空格的函数没有按照我认为的方式工作?
- C++为线程工作动态地分割例程
- 为什么我的 std::ref 无法按预期工作?
- 布尔比较运算符是如何在C++中工作的
- SampleConsensusPrerejective(ext.RANSAC)是如何真正工作的
- 不确定要在我的main中放入什么才能使我的代码正常工作
- 为什么std::condition_variable notify_all的工作速度比notify_one快(对于随机请
- <<操作员在下面的行中工作
- 有人能解释一下为什么下界是这样工作的吗C++的
- ExtractIconEx:可以工作,但偶尔会崩溃
- C++中的memset函数工作不正常
- 当我在第一个循环中使用"auto"时,它工作正常,但是使用"int"它会给出错误,为什么?
- 当 int 方法工作正常时,void 方法有何不同,或者为什么我不能调用 void 方法?
- sdl软件渲染器不工作,工作在硬件加速的一个