== (等于)
Write_data@qq.com(讨论 | 贡献)2016年3月28日 (一) 08:22的版本
- ==、!=、<、>(比较运算符)
比较运算操作符:
x == y(x 等于 y) x != y(x 不等于 y) x < y(x 小于 y) x > y(x 大于 y) x <= y(x 小于等于 y) x >= y(x 大于等于 y)
- 注意:
使用赋值运算符的情况(如 if (x = 10))。一个“=”表示的是赋值运算符,作用是将 x 的值设为 10(将值 10 放入 x 变量的内存中)。两个“=”表示的是比较运算符(如 if (x == 10)),用于测试 x 和 10 是否相等。后面这个语句只有 x 是 10 时才为真,而前面赋值的那个语句则永远为真。
这是因为 C 语言按以下规则进行运算 if (x=10):10 赋值给 x(只要非 0 的数赋值的语句,其赋值表达式的值永远为真),因此 x 现在值为 10。此时 if 的测试表达式值为 10,该值永远为真,因为非 0 值永远为真。所以,if (x = 10) 将永远为真,这就不是我们运行 if 所期待的结果。另外,x 被赋值为 10,这也不是我们所期待的结果。