zoukankan      html  css  js  c++  java
  • 在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*字符串

  • 相关阅读:
    Docker 容器间的单向连接
    使用 mysql 的 Docker 镜像
    Dockerfile 自动制作 Docker 镜像(三)—— 镜像的分层与 Dockerfile 的优化
    Dockerfile 自动制作 Docker 镜像(一)—— 基本命令
    在 Docker 的 CentOS7 镜像 中安装 mysql
    手动制作Docker镜像
    Docker容器基本命令注意点
    Linux基础15-Linux库函数
    Linux基础14-makefile
    Linux基础13-GDB调试
  • 原文地址:https://www.cnblogs.com/zijidefengge/p/14282235.html
Copyright © 2011-2022 走看看