gcc中的-finput-charset和-fexec-charset开关
来源:互联网 发布:帝国时代 知乎 编辑:程序博客网 时间:2024/06/18 05:09
-finput-charset用来指定输入文件的的字符编码,如果不指定,将无法将L“中文"这样的字符正确转化为宽字符。相反,未指定输入文件的字符编码时,MinGW编译环境下的gcc将按本地字符编码解析源文件,将普通字符串仍然按照文件使用的本地字符编码编入程序,并将含有宽字符标量L的字符串按照本地编码来识别并转为UTF-8编码(很奇怪,它不是转为UNICODE编码,反而,在指定了源文件的字符集之后却转为了UTF-16编码。同时,这种不指定源文件编码方式却使用宽字符标量L指明编译器要将特定字符串转换成UNICODE编码的行为将会带来一个警告,而不是编译报错)。
-fexec-charset指定了字符串所使用的格式。
比如说,如果源文件保存的是GBK格式的,那么编译成程序时,其中的字符串就是GBK编码的。但是如果你的程序其实需要字符串按UTF-8来编码,那么就可以指定编译选项-fexec-charset=UTF-8 -finput-charset=GBK
另外,windows中常见的UNICODE编码在这里应该写成UTF-16。linux中的UNICODE编码相应的就是UTF32了。
-fwide-exec-charset指定了C\C++中使用宽字符时的格式,默认的就是UTF-16或者UTF32,取决于你的系统中使用的宽字符格式。(正如上面说的,windows使用UTF16的UNICODE编码,它是UCS2字符集的一个编编码格式;linux使用UTF32编码,是UCS4的一个编码格式。相应的,windows中的编译器一般将wchar_t定为2个字节宽,而linux中的编译器一般定义wchar_t为4字节宽。)
-fexec-charset指定了字符串所使用的格式。
比如说,如果源文件保存的是GBK格式的,那么编译成程序时,其中的字符串就是GBK编码的。但是如果你的程序其实需要字符串按UTF-8来编码,那么就可以指定编译选项-fexec-charset=UTF-8 -finput-charset=GBK
另外,windows中常见的UNICODE编码在这里应该写成UTF-16。linux中的UNICODE编码相应的就是UTF32了。
-fwide-exec-charset指定了C\C++中使用宽字符时的格式,默认的就是UTF-16或者UTF32,取决于你的系统中使用的宽字符格式。(正如上面说的,windows使用UTF16的UNICODE编码,它是UCS2字符集的一个编编码格式;linux使用UTF32编码,是UCS4的一个编码格式。相应的,windows中的编译器一般将wchar_t定为2个字节宽,而linux中的编译器一般定义wchar_t为4字节宽。)
- gcc中的-finput-charset和-fexec-charset开关
- gcc中的-finput-charset和-fexec-charset开关
- charset
- charset
- charset
- CharSet
- charset和pageEncoding
- JSP中的pagaEncoding和contentType中charset的区别
- JSP中的pagaEncoding和contentType中charset的区别
- JSP中的pagaEncoding和contentType中charset的区别
- Charset、charset、pageEncoding
- charSet 和PageEncoding的区别
- charset和pageEncoding的区别
- pageEncoding和charset的区别
- charSet和PageEncoding的区别
- charset和pageEncoding的区别
- charset和pageecoding的区别
- charSet 和PageEncoding的区别
- 在O(1)时间内返回栈的最小值
- 解决MSSQL占用过多内存的简单方法
- VC使用MSXML解析XML文档
- 将作为字符串保存的IP地址变为二进制数值
- SQL Server数据库崩溃时恢复方式
- gcc中的-finput-charset和-fexec-charset开关
- SQL Server提升权限相关命令及防范
- POJ 3842 An Industrial Spy
- linux + eclipse调试ffmpeg
- 在本机 Android 应用程序中载入 Google Maps API 网站
- Delphi中单链表操作
- Debian wine foxmail7.0安装
- 学习android第一篇
- 最近遇到的sql注入,目录遍历,xss的防范