AW: not 2=1 ist nicht not(2=1)
Naja letztendlich sind sogar die logischen and/not/or/.. -Operatoren binäre Operatoren. (siehe C/C++)
|
AW: not 2=1 ist nicht not(2=1)
In Delphi werden not/and/or/xor binär verwendet, außer bei den Booleans (Boolean/ByteBool/WordBool/LongBool, also alles mit True/False), wo diese als logische Operatoren behandelt werden.
|
AW: not 2=1 ist nicht not(2=1)
Zitat:
Die Konstante true ist in Delphi als 1 definiert (unter C/C++ gibts verschiedene...), demnach ergaebe ein bitweises
Delphi-Quellcode:
aber 254, was nicht false ist (false ist nur 0).
not true
Daher sehen die Operatoren in C/C++ ja auch anders aus: "!" fuer logisches Not und "~" fuer bitweises. Das gleiche bei Or und And: "||" und "&&" fuer logisch, "|" und "&" fuer bitweise. In Delphi heissen die eben immer gleich, daher muss man ein wenig auf den Zusammenhang aufpassen. |
AW: not 2=1 ist nicht not(2=1)
Ich war immer der Auffassung, dass der Unterschied zwischen ||/&& und |/& darin liegt, dass ersteres Optimierung zulässt, und letzeres immer zur Vollauswertung des Ausdrucks führt. Also das, was man bei Delphi über die Compileroptionen nur global einstellen kann ("Boolsche Ausdrück vollständig auswerten" heisst die imho).
|
AW: not 2=1 ist nicht not(2=1)
Zitat:
Gruß, Sven |
AW: not 2=1 ist nicht not(2=1)
Medium, ihr beide habt recht:
Hier Aber imho folgt aus der Tatsache, das & und | binäre Operatoren sind, das sie vollständig ausgeführt werden müssen. Zitat:
Bool AND Bool => logischer Operator Int AND Int => binärer Operator |
AW: not 2=1 ist nicht not(2=1)
Zitat:
|
AW: not 2=1 ist nicht not(2=1)
Ah! Ich könnte C# im Kopf haben, das hab ich auch weit öfter benutzt als C(++). Compilerschalter, okay. Die gibts ja auch noch =)
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:13 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz