为什么 MSVC 的编译器警告号从 4000 开始?

2020-11-14 17:35:09 +08:00
 AndyAO

从 0000 或者 0001 开始更符合直觉,4000 有什么特殊含义?

1052 次点击
所在节点    问与答
5 条回复
AndyAO
2020-11-14 17:47:22 +08:00
还有个奇怪现象是,E 开头的警告居然是没有任何文档的.
lonewolfakela
2020-11-14 18:18:09 +08:00
虽然不知道为啥不是从 0 开始的,不过至少可以确认的是
C999 是 Fatal error UNKNOWN MESSAGE
C1001 到 1999 是 Compiler Fatal Error
C2000 到 3999 是 Compiler Error
C4000 到 5999 是 Compiler Warning
再往上的编码是一些 Code analysis warning 之类的东西……
大体上是这样,中间穿插了一些奇怪的东西,比如 C1xxx 段里面还有几个 Code analysis 出错了的消息之类的。
lonewolfakela
2020-11-14 18:28:11 +08:00
另外 E 开头那些个是 Intellisense 报告的问题。Intellisense 用的是 EDG 开发的 c++前端,不是微软自己的产品,所以我猜可能是因为这个原因所以文档上找不到
AndyAO
2020-11-14 19:11:12 +08:00
@lonewolfakela #3
现在 Exxxx 的帮助是直接跳转到 Bing 去搜索.
文档总是会有吧,给个链接多好,可以不是 MSDN 上的,这个没关系.
还真的有点怪.
o(*^@^*)o
AndyAO
2020-11-14 19:17:31 +08:00
@lonewolfakela #3
还有就是,Intellisense 的警告也可以是'Cxxxx',并带有文档.
![]( https://i.loli.net/2020/11/14/TXrOBUeqAR18vsE.png)

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

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

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

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

© 2021 V2EX