2.4.2 陷阱:连续的不等式

2013-10-07 14:56:33 · 作者: · 浏览: 75

2.4.2  陷阱:连续的不等式

不要在程序中使用如下所示的连续不等式:

  1. if  (x < z < y)  
  2. cout << "z is between x and y."; 

在程序中使用以上语句,程序也许能通过编译并运行,但毫无疑问,它会产生错误的结果。我们将在了解C++(www.cppentry.com)语言更多的细节之后,再讨论这个问题的根源。使用任何比较操作符(而非仅仅是<)来进行一连串的比较时,都会发生同样的问题。表示连续不等式的正确方式是使用"逻辑与"操作符&&,如下所示:
  1. if ( (x < z ) && (z < y) )  
  2.    cout << "z is between x and y.";