Win32-API: Wie übergebe ich einen "NULL"-Parameter

Windowsspezifisches Forum , API ,..
Beiträge, die plattformübergreifend sind, gehören ins 'Allgemein'-Forum.
real
Beiträge: 468
Registriert: 05.10.2004 14:43

Win32-API: Wie übergebe ich einen "NULL"-Parameter

Beitrag von real »

siehe oben...
DarkDragon
Beiträge: 6291
Registriert: 29.08.2004 08:37
Computerausstattung: Hoffentlich bald keine mehr
Kontaktdaten:

Beitrag von DarkDragon »

Schonmal von Null gehört?

Code: Alles auswählen

w32func_(0)
Angenommen es gäbe einen Algorithmus mit imaginärer Laufzeit O(i * n), dann gilt O((i * n)^2) = O(-1 * n^2) d.h. wenn man diesen Algorithmus verschachtelt ist er fertig, bevor er angefangen hat.
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

Beitrag von ts-soft »

Also:

Code: Alles auswählen

#Null
#Nul
#Nul$
Chr(0)
Alle Konstanten in PB enthalten.
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
real
Beiträge: 468
Registriert: 05.10.2004 14:43

Beitrag von real »

DarkDragon hat geschrieben:Schonmal von Null gehört?

Code: Alles auswählen

w32func_(0)
Die 0 ist nicht NULL! Deshalb meine Frage...
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

Beitrag von ts-soft »

Wenn ein NULL als Variant erwartet wird ist es noch ein anderer Wert. Null ist also fast garnichts, während 0 eine Zahl ist ;)
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
DarkDragon
Beiträge: 6291
Registriert: 29.08.2004 08:37
Computerausstattung: Hoffentlich bald keine mehr
Kontaktdaten:

Beitrag von DarkDragon »

Hmm... bei mit hats bisher IMMER mit 0 geklappt :? naja, welche Werte kanns denn haben?

Ich finds eigentlich ziemlich nutzlos, NULL Parameter überhaupt zu haben. Wozu dienen die dinger eigentlich in Funktionen? Mehr Speicherverlust?
Angenommen es gäbe einen Algorithmus mit imaginärer Laufzeit O(i * n), dann gilt O((i * n)^2) = O(-1 * n^2) d.h. wenn man diesen Algorithmus verschachtelt ist er fertig, bevor er angefangen hat.
GPI
Beiträge: 1511
Registriert: 29.08.2004 13:18
Kontaktdaten:

Beitrag von GPI »

real hat geschrieben:
DarkDragon hat geschrieben:Schonmal von Null gehört?

Code: Alles auswählen

w32func_(0)
Die 0 ist nicht NULL! Deshalb meine Frage...
Scherzkecks. Der PC kennt keine Abstrakten zahlen. Schon garnicht in Integer-bereich.

Entweder ist es 0 oder ein leerstring "".
CodeArchiv Rebirth: Deutsches Forum Github Hilfe ist immer gern gesehen!
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

Beitrag von ts-soft »

In Delphi könnte man auch Nil verwenden :mrgreen:
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
orange-blue
Beiträge: 556
Registriert: 04.09.2004 22:23
Kontaktdaten:

Beitrag von orange-blue »

Ich habs zwar noch nie probiert, aber du könntest versuchen einen String mit global zu definieren.
Wenn du dann im debuger unter "Show Variables schaust, wirst du sehen das die Variable null ist(steht zumidest dort).
real
Beiträge: 468
Registriert: 05.10.2004 14:43

Beitrag von real »

Ihr habt ja Recht: ich hab gerade nochmal im Petzold ("Windows Programmierung") nachgeschaut: er schreibt zumindest im englischen Original, dass der Parameter NULL durch 0 definiert ist. Damit hat sich meine Frage erledigt - danke für die anregende Diskussion. :D
Antworten