[关闭]
@yiltoncent 2015-11-01T16:22:49.000000Z 字数 386 阅读 2755

gcc, clang 与 C陷阱与缺陷[c traps and pitfalls]

C语言基础


C陷阱与缺陷第一章提到词法分析的“贪婪法”,一时兴起就在机器上验证一下,猛然想到以前看过GCCclang的一些资料,说clang的提示会更人性化有点,所以一并试一下。感受一下两种不同的编译器。

2015-11-01 14-57-03屏幕截图.png-28.4kB

比较一下,clang的提示,它首先用三个a++表示出来,告诉程序员这是一个表达式(expression),然后用^符号指出出问题的地方在第三个+号;而提示语句是:

expression is not assignable [表达式不可赋值]

到这里,基本有点经验的程序员都知道怎么回事了,但我觉得还是应该加上如GCC那样的提示告诉程序员:表达式是一个左值。这样的提示更人性化一点。

反观GCC的提示,仅仅只是指出出问题的地方,对于新手来说,可能很难定位到真正发生问题的地方,更加感觉迷惑。

以上仅仅为本人拙见。

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注