linux 下的 wchar_t
1. 默认情况下,windows 下的 wchar_t 占两个字节的长度,而 linux 下的 wchar_t 占四个字节的长度,可以在使用 gcc 编译程序的时候再后面跟上 -fshort-wchar 来解决这个问题。
2. linux 下 wchar_t* 字符串的输出问题 —— 没有解决。
3. 如下程序,可输出宽字符,但是如果加上 -fshort-wchar 编译选项,则输出为乱码。
#include <wchar.h> #include <locale.h> #include <stdlib.h> #include <stdio.h> #include <string.h> int main(void) { setlocale(LC_ALL,"zh_CN.UTF-8"); wchar_t a[10] = L"你好"; wprintf(L"this is a test !/n"); wprintf(L"%d/n",wcslen(a)); wprintf(L"%ls/n",a); retur 0; }
4. 可以使用下面这个函数,输出经参数 -fshort-wchar 编译过的宽字符。
void print_wcs( const wchar_t *text ) { int len = 0; int i = 0; wchar_t *p = NULL; if( NULL == text ) return; p = text; while( *p != L'/0' ) printf( "%lc", *p++ ); }
linux 下的 wchar_t相关推荐
- Linux下 wchar_t 与char 转换
为了支持多语言,需要支持宽字符,Linux下用wchar_t表示,wchar_t最大长度4个字节,已经可以囊括世界上所有的语言编码,中文字符在gb2312编码下用2个字节表示,但用utf-8编码需要3 ...
- linux下中文的wchar转char,Linux下 wchar_t 与char 转换
为了支持多语言,需要支持宽字符,Linux下用wchar_t表示,wchar_t最大长度4个字节,已经可以囊括世界上所有的语言编码,中文字符在gb2312编码下用2个字节表示,但用utf-8编码需要3 ...
- linux wchar t char,linux 下 Linux 下char转换为wchar_t
LInux下使用mbstowcs函数可以将char转化为wchar_t 函数含义:convert a multibyte string to a wide char string 说明: ...
- linux下中文的wchar转char,Linux 下char转换为wchar_t
LInux下使用mbstowcs函数可以将char转化为wchar_t 函数含义:convert a multibyte string to a wide char string 说明: ...
- linux系统数据库类型,linux下的数据类型
sys/types.h sys/types.h中文名称为基本系统数据类型. 在应用程序源文件中包含 以访问 _LP64 和 _ILP32 的定义. 此头文件还包含适当时应使用的多个基本派生类型.尤其是 ...
- Linux下矢量字库应用
Linux下矢量字库应用 1.FreeType简介 FreeType 库是一个完全免费(开源)的.高质量的且可移植的字体引擎,它提供统一的接口来访问多种字体格式文件,可以非常方便我们开发字体显示相关的 ...
- linux下字节类型怎么定义,linux的sys/types.h 基本系统数据类型
sys/types.h 的 中文名称 为 基本系统数据类型 在应用程序源文件中包含 以访问 _LP64 和 _ILP32 的定义. 此头文件还包含适当时应使用的多个基本派生类型.尤其是以下类型更为重要 ...
- Linux下c++调用python程序
按照上篇windows下调用的在linux下运行命令 其中linux下lib中为libpython3.6m.a,同时include中Python.h在python3.6m目录下,因此需要修改命令和ma ...
- 过滤Linux下不同大小的文件,linux查找当前目录下 M/G 大小的文件,删除Linux下指定大小的文件
过滤Linux下不同大小的文件,linux查找当前目录下 M/G 大小的文件,删除Linux下指定大小的文件 find ./ -type f -size +1G| xargs rm 在清理系统日志文件 ...
最新文章
- java中获取时间的方式,持续更新
- OpenCV的cv::cvtColor函数之“CV_RGB2GRAY”: 未声明的标识符错误解决方法
- Ubuntu18.04 CUDA与cudnn安装
- windows下运行多个tomcat的配置
- 温故知新:Docker基础知识知多少?
- Java中的策略设计模式
- oracle 试图访问已经在使用的事物处理临时表,解决ORA-14450:试图访问已经在使用的事务处理临时表-Oracle...
- 初步理解NServiceBus
- 20200411使用Potplayer对视频进行逐帧截图
- C++ 学习笔记10
- 使用python根据模板批量生成docx文档
- TikTok干货分享:创作者基金申请流程及常见问题解答
- 【CDH安装】scm_prepare_database.sh使用
- Vulkan层的简要说明
- pantompkins matlab,Matlab对Python的findpeaks算法
- gis 六边形网格_六边形网格快速定位
- 2.6.机载测深激光扫描系统—(Topographic Laser Ranging and Scanning-Principle 读书笔记)
- LeetCode Day01:一年中的第几天
- 2021-02-05仅供自己参考:多态使用
- 188数码管驱动案方案