DebugVar (Variable mit Namen debuggen)

Hier könnt Ihr gute, von Euch geschriebene Codes posten. Sie müssen auf jeden Fall funktionieren und sollten möglichst effizient, elegant und beispielhaft oder einfach nur cool sein.
Benutzeravatar
Batze
Beiträge: 1492
Registriert: 03.06.2005 21:58
Wohnort: Berlin
Kontaktdaten:

DebugVar (Variable mit Namen debuggen)

Beitrag von Batze »

Code: Alles auswählen

Macro DQ                                      ; Ein Anführungszeichen
  "
EndMacro
Macro DebugVar (Value, Typ=#PB_Interger)          ; Variablenwert debuggen
  CompilerSelect (Typ)                        ; Je nach Typ verschieden Debuggen ...
    CompilerCase #PB_Byte                     ; Binärdaten
      Debug Str(#PB_Compiler_Line) + ":  " + DQ#Value = DQ + Bin(Value)
    CompilerCase #PB_Integer                     ; Normale Zahl
      Debug Str(#PB_Compiler_Line) + ":  " + DQ#Value = DQ + Str(Value)
    CompilerCase #PB_Quad                     ; Hexadezimal
      Debug Str(#PB_Compiler_Line) + ":  " + DQ#Value = DQ + Hex(Value)
    CompilerCase #PB_Float                    ; Fließkommazahl
      Debug Str(#PB_Compiler_Line) + ":  " + DQ#Value = DQ + StrF(Value, 3)
    CompilerCase #PB_Double                   ; Fließkommazahl
      Debug Str(#PB_Compiler_Line) + ":  " + DQ#Value = DQ + StrD(Value)
    CompilerCase #PB_String                   ; String
      Debug Str(#PB_Compiler_Line) + ":  " + DQ#Value = DQ + Value)      
  CompilerEndSelect
EndMacro

; Beispiel:
A = 5
DebugVar (A)

; Beispiel 2:

Dim B.i(10)
DebugVar (ArraySize(B()))
Steht ja fast so ähnlich in der PB-Hilfe. Habe es hier aber nicht (gleich) gefunden und finde es ganz praktisch. Zeilennummern sind natürlich manchmal schon fast zu viel des guten.
Am besten noch "DebugVar" als Schlüsselwort definieren, wegen der Optik.

Edit: Habe mal Integer als default genommen, ist schon logischer
Zuletzt geändert von Batze am 09.10.2010 11:25, insgesamt 1-mal geändert.
Hier sind meine Codes (aber die Seite geht gerade nicht):
http://www.basicpure.de.vu
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Re: DebugVar (Variable mit Namen debuggen)

Beitrag von ts-soft »

Irgendwie fehlt dort der wichtigste Typ, bzw. der Default-Typ ist auch verkehrt :mrgreen:

Wo ist #PB_Integer

Gruß
Thomas
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Benutzeravatar
Batze
Beiträge: 1492
Registriert: 03.06.2005 21:58
Wohnort: Berlin
Kontaktdaten:

Re: DebugVar (Variable mit Namen debuggen)

Beitrag von Batze »

Naja, ich war eigentlich nur zu faul mir eigene Konstanten anzulegen.
Besser wären irgendwie

#Debug_Bin
#Debug_Dec
#Debug_Hex
usw. da ich ja an sich nicht wirklich nach typen unterscheide (außer bei float und string)
Hier sind meine Codes (aber die Seite geht gerade nicht):
http://www.basicpure.de.vu
Antworten