CodeBlocks 编译运行代码,在控制台 的中文是乱码,怎么调整
CodeBlocks 编译运行代码,在控制台 的中文是乱码, 解决的方法如下所示:
-finput-charset=UTF-8 -fexec-charset=GBK

解释:
1、-finput-charset=UTF-8:
这个选项告诉编译器,源代码文件使用 UTF-8 编码。UTF-8 是一种可变长度的字符编码,可以表示 Unicode 字符集中的所有字符。
使用此选项可以确保编译器正确解析源代码中的字符,特别是当源代码中包含非 ASCII 字符(如中文、日文等)时。
2、-fexec-charset=GBK:
这个选项指定程序在执行时使用 GBK 编码。GBK 是一种用于简体中文的字符编码,能够表示汉字及其他一些字符。
通过设置执行字符集为 GBK,可以确保程序在输出时正确显示中文字符,尤其是在终端或控制台中。
字符集知识点补充:
字符集是计算机中用于表示文本的字符的集合。它定义了字符与其对应的数字编码之间的映射关系。不同的字符集可以支持不同的语言和符号。以下是一些常见的字符集及其解释:
1. ASCII (American Standard Code for Information Interchange)
描述: ASCII 是最早的字符集之一,使用 7 位二进制数表示 128 个字符,包括英文字母、数字、标点符号和控制字符。
范围: 0-127
用途: 主要用于英语文本。
2. ISO-8859 系列
描述: ISO-8859 是一系列 8 位字符集,扩展了 ASCII,支持多种西欧语言。
常见变种:
ISO-8859-1: Latin-1,支持大多数西欧语言。
ISO-8859-2: Latin-2,支持中欧语言(如波兰语、捷克语等)。
3. UTF-8
描述: UTF-8 是一种可变长度的字符编码,可以表示 Unicode 字符集中的所有字符。它使用 1 到 4 个字节表示一个字符。
优点: 向后兼容 ASCII,广泛用于网页和现代应用程序。
用途: 支持全球几乎所有语言的字符。
4. UTF-16
描述: UTF-16 也是一种可变长度的字符编码,通常使用 2 或 4 个字节表示一个字符。
用途: 常用于 Windows 系统和 Java 编程语言中,支持 Unicode 字符集。
5. GB2312 / GBK / GB18030
描述: 这些是用于简体中文的字符集。
GB2312: 最初的简体中文字符集,支持约 7,000 个汉字。
GBK: 扩展 GB2312,支持更多汉字和符号。
GB18030: 进一步扩展,支持所有 Unicode 字符。
用途: 主要用于中文操作系统和应用程序。
6. Big5
描述: Big5 是用于繁体中文的字符集,主要在台湾和香港使用。
用途: 支持繁体中文字符。
