C++ wchar_t介绍以及和string类型的转换
来源:互联网 发布:睡眠多久知乎 编辑:程序博客网 时间:2024/05/29 08:55
首先介绍下wchar_t类型
一、wchar_t类型的由来
我们知道char类型变量可以存储一个字节的字符,它用来保存英文字符和标点符号是可以的,但是对于汉字、韩文以及日文这样的字符却不可以,因为汉字、韩文以及日文每一个文字都占据两个字节,为了解决这个问题,c++提出了wchar_t类型,称之为双字节类型,又称宽字符类型。
二、下面是一个范例
int main(int argc, wchar_t* argv[]){//使用setlocale函数将本机的语言设置为中文简体setlocale(LC_ALL,"chs");//LC_ALL表示设置所有的选项(包括金融货币、小数点,时间日期格式、语言字符串的使用习惯等),chs表示中文简体wchar_t wt[] = L"中国你好!";//大写字母L告诉编译器为"中"字分配两个字节的空间wcout<<wt<<endl;//使用wcout来代替cout输出宽字符,wcin类代替cin输入宽字符cout<<wcslen(wt)<<endl;//wcslen输出宽字符串的长度,输出长度是5cout<<sizeof(wt)<<endl;//输出长度是12个字节,最后的wchar_t类型的'\0'两个字节return 0;}三、 和string类型之间的转换
string str("你好中国");wchar_t * wc = new wchar_t[str.size()];swprintf(wc,100,L"%S",str.c_str()); //注意大写//wc指向的内存区域存储这wchar_t类型的 ”你好中国“。
0 0
- C++ wchar_t介绍以及和string类型的转换
- 浅谈c-string(char或者wchar_t),std::string和CString之间的转换
- wchar_t*和string相互转换
- 各种类型字符之间的转换(单字节char*和宽字节wchar_t*,TCHAR和string的转换)
- const wchar_t*转换成string类型
- 宽字符wchar_t* 和字符char*的介绍和转换
- C++ string 、char 、char *、wstring、wchar_t * 、wchar_t 之间的转换
- wchar_t 转换 string & std::string 转换 wchar_t
- wchar_t 转换 string & std::string 转换 wchar_t
- C风格字符串和string类型的相互转换
- C++string和int类型的转换方法
- char和wchar_t的转换
- wchar_t*和char*的转换
- wchar_t char string wstring 之间的转换
- wchar_t char string wstring 之间的转换
- wchar_t char string wstring 之间的转换
- c++中的char*与wchar_t*与string以及wstring之间的相互转换
- 深入理解c++中char*与wchar_t*与string以及wstring之间的相互转换
- IOS 设置 navigationItem.rightBarButtonItem leftBarButtonItem 字体按钮
- Java面试葵花宝典
- IOS UI调试reveal基本使用
- <算法>七桥问题
- 高并发IO技术
- C++ wchar_t介绍以及和string类型的转换
- php提取字符串中的数字
- 认识项目结构
- Android Service 谷歌官方文档
- Codeforces Round #275 (Div. 2) B. Friends and Presents
- MTKAndroid添加驱动模块
- Ubuntu 安装程序
- STM32时钟树
- RedHat、Fedora、Centos如何安装软件