Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
The latest version of this topic can be found at Equality Operators: == and !=.
Syntax
expression == expression
expression != expression
Remarks
The binary equality operators compare their operands for strict equality or inequality.
The equality operators, equal to (==) and not equal to (!=), have lower precedence than the relational operators, but they behave similarly. The result type for these operators is bool.
The equal-to operator (==) returns true (1) if both operands have the same value; otherwise, it returns false (0). The not-equal-to operator (!=) returns true if the operands do not have the same value; otherwise, it returns false.
Operator Keyword for !=
The not_eq operator is the text equivalent of !=. There are two ways to access the not_eq operator in your programs: include the header file iso646.h, or compile with the /Za (Disable language extensions) compiler option.
Example
// expre_Equality_Operators.cpp
// compile with: /EHsc
#include <iostream>
using namespace std;
int main() {
cout << boolalpha
<< "The true expression 3 != 2 yields: "
<< (3 != 2) << endl
<< "The false expression 20 == 10 yields: "
<< (20 == 10) << endl;
}
Equality operators can compare pointers to members of the same type. In such a comparison, pointer-to-member conversions, as discussed in Pointer-to-Member Conversions are performed. Pointers to members can also be compared to a constant expression that evaluates to 0.
See Also
Expressions with Binary Operators
C++ Operators
C++ Built-in Operators, Precedence and Associativity
C Relational and Equality Operators