当前位置:首页 > 百科

wchar_t

wc来自har_t是C/C++的字符类型,置施那煤杂是一种扩展的存储方式,wchar_t类型主要用在360百科国际化程序的实现中,但它不等同于uni编码。uni编码的字符一般wchar_t类型存储。

  • 外文名 wchar_t
  • 属    于 C/C++的字符类型
  • 类    别 一种扩展的存储方式
  • 概    念 8位字符类型

简介

  wchar_t是C/C++的字符数据类型,是一种扩展的字符存储方式,wchar_t类型主要用在国际化程序的实现中,但它不等同于unicode编码。unicode编码的字符一般以wchar_t类型存储。c胜回突丰har是8位字符类型,最多只能包含256种字符,许多外文字符集所含的字符数目超过256个他掉待者米的曾湖取,char型无法表示。

  wchar_t数据类型一般为16位或32位,但装庆便何备校转检扩不同的C或C++库有不同的规定来自,如GNU Libc规定wchar_t为32位[1],总之,wchar_t所能表示的字符数远超char型。

  标准C++中的wprintf()函数以及iostream类库中的类和对职超象能提供wchar_t360百科宽字符类型的相关操作。

例子

  #include <iostream>

  #include <cstdl职好烈圆以规酸苗ib>

  #includ好总坏源e <locale>

  using namespace std;

  lo关住配之处备义cale loc("chs"); //依环境而定,可能不同。

  int main连资然步宗率止()

  {

  wc简屋满殖热har_t wStr[] = L"中文";

  wcout.imbue(但配吃loc);

  wcout << w越银未奏绝口众利尔Str << endl;

  r轴由原三批守感免措何实eturn 0;

  }

转换

来自  将char转换成wchar_t

  可以用TEXT()方法将char转换成wchar_t

  例如: wchar_t app推钱段对修源尽苗Name[5]=TEXT("test");

  方360百科法2:

  wchar_t* c2w(const char *str)

  {

  int length = strlen(str)+1;

  wchar_t *t = (w改春务度宁科蒸空根速财char_t*)malloc(sizeof(wchar_t)*length);

  memset(t,0,length*sizeof(wchar_t));

  MultiByteToWideChar(CP_A唱精统够差始山CP,0,str,strlen(str),t,length);

  体曾系贵胶迅点return t;

  }

声明:此文信息来源于网络,登载此文只为提供信息参考,并不用于任何商业目的。如有侵权,请及时联系我们:fendou3451@163.com
标签:

  • 关注微信
上一篇:南城百货

相关文章