在VC中 Windows.h中的 宽字节字符串 wchar_t
对于宽字节字符串, wchar_t 实质是 unsiged short , 也就是一个字符串在内存中占两个字节,而char 在内存中,一个字符只占一个字节,好像是为了解决汉字的编码问题,使用的是unicode.
对于宽字符数组的初始化
wchar_t name[10] = {L"sdfasdfasfd"} 也可以是 wchar_t name[10] = L"sdfasdfasfd"
数组的初始化可以这样写,但是如果初始化完之后,就要一个位置一个位置的赋值,比如 name[1] = ...
对于宽字符的打印
wprintf(L"%s",name) ;
对于宽字符的输入
wscanf_s(L"%s",name, 40); 这里name 本身就是指针,可以省略&
在Windows下,wchar_t占2个字节(byte);在Linux下,wchar_t占4个字节
wchar_t类型主要用在国际化程序的实现中,但它不等同于Unicode编码。Unicode编码的字符一般以wchar_t类型存储。
char是8位字符类型,最多只能包含256种字符,许多外文字符集所含的字符数目超过256个,char型无法表示。
标准C++中的wprintf()函数以及iostream类库中的类和对象能提供wchar_t宽字符类型的相关操作。
函数介绍:
wcslen() 类似与char*类型作参数的strlen()函数 用来获取wchar_t*变量的长度(不包含终结符)
wcscpy() 类似与char*类型作参数的strcpy()函数 用来进行wchar_t*变量之间的复制
同样的还有 wcsncpy()
wcscmp() 类似与char*类型的strcmp()函数 用来对比两个wchar_t*变量的大小
wmemset() 类似与char*类型的memset()函数 用来初始化内存
wprintf() 类似与char*类型的printf()函数 用来输出wchar_t*字符串
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律