![]() |
AW: Unterschied zwischen "not" und "false"?
-1 hat aber auch bei calc den Byte-Wert FF.
|
AW: Unterschied zwischen "not" und "false"?
Weil bei signed das oberste Bit das Vorzeichen bestimmt
Wegen 0 - Zahl = negative Zahl
Code:
0 - 1 = -1
00000000(1) - 1000000 = 11111111 |
AW: Unterschied zwischen "not" und "false"?
Siehe dazu das
![]() Und das andere: Es ist Definitionssache ;) Wenn du $FF in einen unsigned Byte schreibst, dann hast du 255. Aber in der Regel werden vorzeichenbehaftete Datentypen genommen. Außerdem ist das doch glaub ich andersherum: true = -1 in Delphi oder nicht? MfG Fabian |
AW: Unterschied zwischen "not" und "false"?
Ich habs noch nicht ausprobiert, aber da sollte +1 rauskommen. In Delphi ist der Boolean wohl so definiert:
Delphi-Quellcode:
und damit ist true +1 und false 0.
type Boolean = (false, true);
Bernhard |
AW: Unterschied zwischen "not" und "false"?
Ja aber der Wert wird in einem Byte gespeichert un deshalb sind andere Werte möglich und wie schon gezeigt wurde leifern bestimmte Funktionen andere Werte.
Kurz gesagt ist alles was nich false ist true ( <> 0) |
AW: Unterschied zwischen "not" und "false"?
-1 in einem signed und mit Überlauf in einem unsigned Register (32 Bit) ist $FFFFFFFF ... tja und wenn man dieses auf ein Byte kürzt, dann kommt eben $FF raus.
Abgesehn davon daß viele WinAPIs eh LongBool (32 Bit) nutzen. |
AW: Unterschied zwischen "not" und "false"?
Das hat nichts mit dem Überlauf zu tun, sondern wie oben geschrieben das 0 - eien zahl deren inverses Element ergibt bzw. Zahl + Komplement = 0
|
AW: Unterschied zwischen "not" und "false"?
Um das zu entscheiden, braucht man keinen CPU-View oder ASM-Code.
|
AW: Unterschied zwischen "not" und "false"?
Kleiner Denkfehler:
if not List.IsEmpty bedeutet: Wenn nicht die Liste leer ist -> die Liste ist also nicht leer -> in der Liste ist was drin if List.IsEmpty = false bedeutet: Wenn es falsch ist, dass die Liste leer ist, wobei .IsEmpty glücklicherweise eine Delpi-eigene Funktion ist, wodurch das hier geht, aber nicht schön ist, weil man über das = false beim lesen stolpern könnte. Du willst wohl ausdrücken: Wenn die Liste nicht leer ist, dann...; heißt im Englischen: if the list is not empty. Aus den Kursiv gedruckten Wörtern erschließt sich dann, was man in Delphi dann schreiben muss. Bernhard |
AW: Unterschied zwischen "not" und "false"?
Zitat:
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:52 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz