Bool always evaluating as true

boolean, c++

Solution

You need to actually call the function:

if (inOrder(first, second, third))

This

if (inOrder)

always evaluates to true, as it really checks, whether the function pointer is non-null.

Problem

I'm making a program where you need to use a bool function to find out if three numbers are in ascending order when the user inputs them. However, the bool function always evaluates as true. What am I missing? Here is my code: ``` #include <iostream> #include <string> using namespace std; bool inOrder(int first, int second, int third) { if ((first <= second) && (second <= third)) { return true; } else { return false; } } int main() { int first, second, third; cout << "You will be prompted to enter three numbers." << endl; cout << "Please enter your first number: "; cin >> first; cout << "Please enter your second number: "; cin >> second; cout << "Please enter your third and final number: "; cin >> third; cout << endl; inOrder(first, second, third); if (inOrder) { cout << "Your numbers were in ascending order!" << endl; } else { cout << "Your numbers were not in ascdending order." << endl; } return 0; } ```

Original source