Messages in this thread | | | Date | Sat, 26 Jan 2002 11:51:22 +0100 | From | Gábor Lénárt <> | Subject | Re: RFC: booleans and the kernel |
| |
On Sat, Jan 26, 2002 at 03:08:41AM +0000, Jamie Lokier wrote: > Helge Hafting wrote: > > Why would anyone want to write if (X==false) or if (X==true) ? > > It is the "beginner's mistake" way of writing code. Then people learn, > > and write if (X) or if (!X). Comparing to true/false is silly. > > Nobody writes if ( (a==b) == true) so why do it in the simpler cases? > > I usually without the == in these cases: > > if (pointer) // test for non-0. > if (condition) > if (condition-valued-variable) > > but not in these (although I am not very consistent):
Khmmm please enlighten me ...
> if (X == true && ptr && *ptr > 1)
Why? Simply use for example type 'char' as boolean value. Let's say 0 means false and other value is true.
So:
if (x) printf("true");
or
if (!x) printf("false");
Why do you want to overcomplicate?
Even:
x=a>b; if (x) printf("A is greater than B");
ONE thing which is best in C is the less strictly type rules eg you can use 'char' to store eg c='A' or c=2. Hey guys, C was designed to write an OS it's not something other ...
- Gábor - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |