我的终端locale如下:
$ locale
LANG="fr_FR.UTF-8"
LC_COLLATE="fr_FR.UTF-8"
LC_CTYPE="fr_FR.UTF-8"
LC_MESSAGES="fr_FR.UTF-8"
LC_MONETARY="fr_FR.UTF-8"
LC_NUMERIC="fr_FR.UTF-8"
LC_TIME="fr_FR.UTF-8"
LC_ALL=
你说的我都同意,但这个应该不是造成情形3的主要原因。
其实,像GCC处理宽字符,也有本身的特殊性,例如
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=35353
我相信,Clang也有这样的情况。
【 在 here080 (hero080) 的大作中提到: 】
: 是开个终端,但是这个终端本身也是一个程序。
: 不同操作系统用的不一样。
: 比如说linux一般常见的bash
: windows一般常见的cmd
: 由于你系统版本不同,这个终端程序默认的字符编码和字体都会不一样。
: 要中文字符正常工作,需要:
: 1. 终端程序设置使用正确的字符编码和字体。
: 2. 你写的程序使用跟终端程度相同字符编码。
: macOS我很少用,不过据我以前的经验mac对中文的支持可以很差。
: 你需要先搞清楚你用的终端程序对字符的处理是怎么样的。
--
FROM 61.155.142.*