Want to win a PS4? Go Premium and enter to win our High-Tech Treats giveaway. Enter to Win

x
Solved

# return bool function

Posted on 2007-11-27
Medium Priority
334 Views
what do I return in a bool function?
0
Question by:Troudeloup
[X]
###### Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

• Help others & share knowledge
• Earn cash & points
• 4
• 2
• 2
• +4

LVL 46

Expert Comment

ID: 20358262
Hi Troudeloup,

A bool. :)

Sorry.  bool is an invented data type that is really just a short int.  Depending on the implementation, you can return a zero/non-zero value for false/true, or if the compiler enforces strong typing you may have to return a logical value.

return (answer != 0);    // logical response

Good Luck,
Kent
0

Author Comment

ID: 20358272
i don't get it.

so

return;

equals   true?  or false?

how do I return the opposite?
0

LVL 53

Accepted Solution

Infinity08 earned 2000 total points
ID: 20358302
If you want to return true :

return true;

if you want to return false :

return false;
0

LVL 7

Expert Comment

ID: 20358315
>>return;
its just an empty return.

U should return a bool value as:
return true;
or
return false;
or
bool b
return b;
or
return (a == b) // returns true if a equals b else returns false.
or
return a non-zero value to return true ; a zero for false.

To return the opposite use the 'not' operator ( '!' )
0

LVL 6

Expert Comment

ID: 20358319
something like this... if bool gives error use BOOL

bool MyFunc()
{
bool ReturnValue = false;

.
.
.
.
ReturnValue = true;

return ReturnValue ;
}
0

LVL 7

Expert Comment

ID: 20358323
return (any poisitive integer >0 say 1); //for true
return (0 ); //for false
0

LVL 6

Expert Comment

ID: 20358335
or
bool MyFunc()
{
.
.
return true;

}

or

bool MyFunc()
{
.
.
return false;

}

0

LVL 40

Expert Comment

ID: 20358398
>> bool is an invented data type that is really just a short int
In C++ bool is a first class type that is normally 1 byte; whereas short int is usually 2 bytes! The point is bool, is bool, it is not int.

bool is a first class type that represents the C++ boolean types true and false (these are NOT the same as the Windows types TRUE and FALSE, which are named int values). In a function that returns bool you should prefer to return a type, value or result of an expression that is semantically boolean.

Examples.
``````return true;
return false;
return !true;
return !false;
return num != 0;
return num > 0;
return 1 == 1;
return (1 - 2) < 0;
``````
0

LVL 40

Expert Comment

ID: 20358406
0

LVL 53

Expert Comment

ID: 20358428
>> Arrrggg -- my examples were lost!

Annoying, isn't it ?

http://www.experts-exchange.com/Community_Support/EE_Bugs/Q_22979641.html
0

LVL 40

Expert Comment

ID: 20358485
Not half as annoying as Troudeloup closing a question within minutes of posting it! I like to make sure the info I am posting is correct so I often test before posting! I've lost track of how many times I've provided him answers only to miss the bar because it's been closed within a few minutes.

Troudeloup, by closing a question (that doesn't have a black or white answer) too quickly you potentially miss out on some good wisdom! Unless there is a specific reason to close it quickly you might want to consider leaving it open for a little longer to give other experts a chance to read the question and construct you an appropriate response! You never know, they might just tell you something important that was missed by the other experts!
0

Author Comment

ID: 20358512
I wasn't aware of what I might miss out, thank you for letter me know :D
0

LVL 40

Expert Comment

ID: 20358543
less haste == less waste :)
0

## Featured Post

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Errors will happen. It is a fact of life for the programmer. How and when errors are detected have a great impact on quality and cost of a product. It is better to detect errors at compile time, when possible and practical. Errors that make their waâ€¦
Introduction This article is the first in a series of articles about the C/C++ Visual Studio Express debugger.  It provides a quick start guide in using the debugger. Part 2 focuses on additional topics in breakpoints.  Lastly, Part 3 focuses on thâ€¦
The goal of the video will be to teach the user the concept of local variables and scope. An example of a locally defined variable will be given as well as an explanation of what scope is in C++. The local variable and concept of scope will be relatâ€¦
The viewer will learn how to clear a vector as well as how to detect empty vectors in C++.
###### Suggested Courses
Course of the Month8 days, 20 hours left to enroll