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相关推荐

  1. Linux下 wchar_t 与char 转换

    为了支持多语言,需要支持宽字符,Linux下用wchar_t表示,wchar_t最大长度4个字节,已经可以囊括世界上所有的语言编码,中文字符在gb2312编码下用2个字节表示,但用utf-8编码需要3 ...

  2. linux下中文的wchar转char,Linux下 wchar_t 与char 转换

    为了支持多语言,需要支持宽字符,Linux下用wchar_t表示,wchar_t最大长度4个字节,已经可以囊括世界上所有的语言编码,中文字符在gb2312编码下用2个字节表示,但用utf-8编码需要3 ...

  3. linux wchar t char,linux 下 Linux 下char转换为wchar_t

    LInux下使用mbstowcs函数可以将char转化为wchar_t 函数含义:convert a multibyte string to a wide char string 说明:        ...

  4. linux下中文的wchar转char,Linux 下char转换为wchar_t

    LInux下使用mbstowcs函数可以将char转化为wchar_t 函数含义:convert a multibyte string to a wide char string 说明:        ...

  5. linux系统数据库类型,linux下的数据类型

    sys/types.h sys/types.h中文名称为基本系统数据类型. 在应用程序源文件中包含 以访问 _LP64 和 _ILP32 的定义. 此头文件还包含适当时应使用的多个基本派生类型.尤其是 ...

  6. Linux下矢量字库应用

    Linux下矢量字库应用 1.FreeType简介 FreeType 库是一个完全免费(开源)的.高质量的且可移植的字体引擎,它提供统一的接口来访问多种字体格式文件,可以非常方便我们开发字体显示相关的 ...

  7. linux下字节类型怎么定义,linux的sys/types.h 基本系统数据类型

    sys/types.h 的 中文名称 为 基本系统数据类型 在应用程序源文件中包含 以访问 _LP64 和 _ILP32 的定义. 此头文件还包含适当时应使用的多个基本派生类型.尤其是以下类型更为重要 ...

  8. Linux下c++调用python程序

    按照上篇windows下调用的在linux下运行命令 其中linux下lib中为libpython3.6m.a,同时include中Python.h在python3.6m目录下,因此需要修改命令和ma ...

  9. 过滤Linux下不同大小的文件,linux查找当前目录下 M/G 大小的文件,删除Linux下指定大小的文件

    过滤Linux下不同大小的文件,linux查找当前目录下 M/G 大小的文件,删除Linux下指定大小的文件 find ./ -type f -size +1G| xargs rm 在清理系统日志文件 ...

最新文章

  1. java中获取时间的方式,持续更新
  2. OpenCV的cv::cvtColor函数之“CV_RGB2GRAY”: 未声明的标识符错误解决方法
  3. Ubuntu18.04 CUDA与cudnn安装
  4. windows下运行多个tomcat的配置
  5. 温故知新:Docker基础知识知多少?
  6. Java中的策略设计模式
  7. oracle 试图访问已经在使用的事物处理临时表,解决ORA-14450:试图访问已经在使用的事务处理临时表-Oracle...
  8. 初步理解NServiceBus
  9. 20200411使用Potplayer对视频进行逐帧截图
  10. C++ 学习笔记10
  11. 使用python根据模板批量生成docx文档
  12. TikTok干货分享:创作者基金申请流程及常见问题解答
  13. 【CDH安装】scm_prepare_database.sh使用
  14. Vulkan层的简要说明
  15. pantompkins matlab,Matlab对Python的findpeaks算法
  16. gis 六边形网格_六边形网格快速定位
  17. 2.6.机载测深激光扫描系统—(Topographic Laser Ranging and Scanning-Principle 读书笔记)
  18. LeetCode Day01:一年中的第几天
  19. 2021-02-05仅供自己参考:多态使用
  20. 188数码管驱动案方案

热门文章

  1. 修改PPT输出JPG图片分辨率为300 dpi
  2. DeepSORT C++版的一个bug
  3. JS实现鼠标中心放大图片功能原理及实例演示
  4. 双亲委派机制以及打破双亲委派机制
  5. 通过反编译分析骑砍2俘虏招募机制
  6. PCIe学习笔记(一)-------1.5 一个TLP包的传输过程
  7. JS生成唯一id方式介绍(UUID和NanoID)
  8. 【MySQL】MySQL抖动
  9. mysql查询出现毫秒值快速解决方法
  10. 编程之美--1的数目