(→"TRUE ist nicht 1") |
Plaicy (Diskussion | Beiträge) (C89 immer noch nicht überall unterstüzt?) |
||
Zeile 8: | Zeile 8: | ||
: Es gibt mehr als einen C-Standard. Manchmal ist es günstiger, TRUE als -1 zu definieren. Die Makros oben sind jedoch unabhängig davon, welcher Wert ein Compiler implementiert --[[Benutzer:SprinterSB|SprinterSB]] 23:36, 5. Jun 2007 (CEST) | : Es gibt mehr als einen C-Standard. Manchmal ist es günstiger, TRUE als -1 zu definieren. Die Makros oben sind jedoch unabhängig davon, welcher Wert ein Compiler implementiert --[[Benutzer:SprinterSB|SprinterSB]] 23:36, 5. Jun 2007 (CEST) | ||
+ | ::Nur aus Interesse: Welcher Compiler unterstüzt nicht C89, wo dies auch schon galt? Außerdem schließe ich mich der Meinung von http://www.dclc-faq.de/kap8.htm#8.2 an, dass Vergleiche auf auf ''TRUE'' grundsätzlich ungünstig sind. Wenn man unbedingt auf eine Konstante abfragen will, was eigentlich auch mit dem "!"-Operator übersichtlicher ist, kann man noch ''!= FALSE'' verwenden.--[[Benutzer:Plaicy|Plaicy]] 17:08, 12. Jun 2007 (CEST) |
Version vom 12. Juni 2007, 16:08 Uhr
"TRUE ist nicht 1"
In dem Abschnitt steht, dass man lieber folgendes schreiben soll.
#define FALSE (0!=0) #define TRUE (0==0)
Was soll das bringen? Danach ist FALSE 0 und und TRUE als 1 definiert, da laut ANSI-C (ANSI99 6.5.9) Each of the operators ["==" und "!="] yields 1 if the specified relation is true and 0 if it is false.'. Siehe auch http://www.dclc-faq.de/kap8.htm#8.2 . Meine Meinung verwirrt die Aussage TRUE ist nicht 1 nur.--Plaicy 22:43, 3. Jun 2007 (CEST)
- Es gibt mehr als einen C-Standard. Manchmal ist es günstiger, TRUE als -1 zu definieren. Die Makros oben sind jedoch unabhängig davon, welcher Wert ein Compiler implementiert --SprinterSB 23:36, 5. Jun 2007 (CEST)
- Nur aus Interesse: Welcher Compiler unterstüzt nicht C89, wo dies auch schon galt? Außerdem schließe ich mich der Meinung von http://www.dclc-faq.de/kap8.htm#8.2 an, dass Vergleiche auf auf TRUE grundsätzlich ungünstig sind. Wenn man unbedingt auf eine Konstante abfragen will, was eigentlich auch mit dem "!"-Operator übersichtlicher ist, kann man noch != FALSE verwenden.--Plaicy 17:08, 12. Jun 2007 (CEST)