Search code examples
c++coperatorscomma-operator

What does the comma operator do?


What does the following code do in C/C++?

if (blah(), 5) {
    //do something
}

Solution

  • Comma operator is applied and the value 5 is used to determine the conditional's true/false.

    It will execute blah() and get something back (presumably), then the comma operator is employed and 5 will be the only thing that is used to determine the true/false value for the expression.


    Note that the , operator could be overloaded for the return type of the blah() function (which wasn't specified), making the result non-obvious.