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

2017-03-10  本文已影响23人  yiltoncent

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

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

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

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

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

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

以上仅仅为本人拙见。

上一篇下一篇

猜你喜欢

热点阅读