我们编写 C 程序时,可以使用 ANSI 编码,或是 UTF-8 编码;在编译程序时,可以使用以下的选项告诉编译器:
-finput-charset=GB2312
-finput-charset=UTF-8
#如果不指定“-finput-charset”,GCC 就会默认 C 程序的编码方式为 UTF-8,即使你是以 ANSI 格式保存,也会被当作 UTF-8 来对待
对于编译出来的可执行程序,可以指定它里面的字符是以什么方式编码,可以使用以下的选项编译器
-fexec-charset=GB2312
-fexec-charset=UTF-8
#如果不指定“-fexec-charset”,GCC 就会默认编译出的可执行程序中字符的编码方式为 UTF-8
常用方法:
book@100ask:~/nfs_rootfs$ file 1.c
1.c: C source, UTF-8 Unicode text
book@100ask:~/nfs_rootfs$ gcc -finput-charset=UTF-8 -fexec-charset=GB2312 -o app 1.c