如何屏蔽 Clang 在处理 GBK 编码且有中文字时的编码警告?

2016-03-15 22:18:07 +08:00
 mikicomo

源文件是 GBK 编码时有中文就报警但是编译能通过,正常执行,控制台下正常显示中文

源文件是 UTF-8 时不报警,但是执行时中文部分乱码。

该如何解决呢?

2724 次点击
所在节点    问与答
8 条回复
zhjits
2016-03-16 07:13:57 +08:00
-Wno-invalid-source-encoding
mikicomo
2016-03-16 08:59:01 +08:00
@zhjits 需要每次都设置吗?有没有一劳永逸的方法呢
zhjits
2016-03-16 11:32:30 +08:00
@mikicomo alias clang="clang -Wno-invalid-source-encoding"
mikicomo
2016-03-16 12:44:24 +08:00
@zhjits 嗯,能问下这个参数有什么作用嘛
mikicomo
2016-03-16 12:45:24 +08:00
@zhjits

```
去掉 -Winvalid-source-encoding
试试 -Wno-invalid-source-encoding

```
这是我搜到的解决方案,但是不是很明白这个参数设定是什么意思
zhjits
2016-03-16 15:36:59 +08:00
@mikicomo 这个参数的意思是对无效的字符编码报错
mikicomo
2016-03-16 16:38:34 +08:00
@zhjits 嗯嗯,谢啦
sherlocknieh
2020-05-09 16:42:13 +08:00
那些改文本编码的方法都治标不治本,真正的问题不在编译器,而在 CMD/PowerShell 。
合理的解决方法是改 CMD/PowerShell 的输出编码为 UTF-8 。具体请看这篇文章:
https://www.jianshu.com/p/cd3a7b196ab3

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/263773

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX