AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

unsigned DWORD

Ein Thema von EWeiss · begonnen am 18. Feb 2017 · letzter Beitrag vom 20. Feb 2017
 
mensch72

Registriert seit: 6. Feb 2008
838 Beiträge
 
#4

AW: unsigned DWORD

  Alt 18. Feb 2017, 22:05
Sorry das ist kein Gefrickel, das ist pure binäre Logik.

"Oder warum denkst du das es sonst einen ERangeError mit dem Data Typ DWORD in Delphi gibt?"... für negative "Integer" Werte oder Konstanten die man ohne Cast auf DWORD zuweist(obwohl die Typgröße im Speicher passt) und in 64BitDelphi macht es Sinn
(z.B. unter Delphi64Bit ist es klar, das eine = $FFFFFFFFFFFFFFFF für eine z.B. "Integer:-1" Zuweisung einen Fehler bei der Bereichsprüfung wirft, denn $FFFFFFFFFFFFFFFF ist dann nunmal größer wie der maximale $FFFFFFFF im DWORD Typ)

Sorry für die Faulheit alles in Hex zu schreiben, da es eh um das Verständnis der entsprechenden 2er Potenzen geht, ist es so sogar "klarer" worum es geht.
(in dezimal erkenne ich den Zusammenhang auch immer nicht sofort, aber das Spiel mit den Nullen&Einsen kann man sich durchaus mal BitByBit zu Gemüte führen )


BASS nutzt bei seinen DLL Deglerationen die WindowsAPI und C konforme Variante, möglichst alles vorzeichenlos Sprachen portabel mit 100% fix bestimmten Typen zu definieren.
BYTE = unsigned 8Bit 0..$FF
WORD = unsigned 16Bit 0..$FFFF
DWORD = unsigned 32Bit 0..$FFFFFFFF
QWORD = unsigned 64Bit 0..$FFFFFFFFFFFFFFFF

Mit signed Variablen mit wo möglich noch ala "Integer" variablem Wertebereich kann ich in eigenen Programmteilen leben, aber wenn es um externe Kopplungen geht sollte man wie BASS es macht sich an die üblichen Standards halten.
Wenn was in Delphi nicht passt, liegt es oft nur an "schlecht" definierten/portierten Konstanten welche z.B. als "-1" deglariert sind und bei aktivierter Bereichsprüfung eben nicht für einen DWORD Parameter verwendet werden können.
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:54 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