Structur wird immer erstellt?
- Kai
- Beiträge: 264
- Registriert: 29.09.2005 20:58
- Computerausstattung: iMac 2019
- Wohnort: Hannover
- Kontaktdaten:
Da muss ich wohl eingestehen das ich wirklich einiges total verdreht habe,
bzw. nicht wirklich bescheid wusste.
Aber ihr habt mir wirklich weitergeholfen und ich denke das ich es gepeilt habe.
Deshalb auch vielen Dank an alle für die Hilfestellung.
Ich werd mich aber damit noch genauer beschäftigen um mehr Hintergrundwissen zu ergattern.
Kennt jemand evtl. noch ein gutes Buch oder so wo es genauer erklärt wird?
Ansonten nochmal big thx, ihr seit spitze!
bzw. nicht wirklich bescheid wusste.
Aber ihr habt mir wirklich weitergeholfen und ich denke das ich es gepeilt habe.
Deshalb auch vielen Dank an alle für die Hilfestellung.
Ich werd mich aber damit noch genauer beschäftigen um mehr Hintergrundwissen zu ergattern.
Kennt jemand evtl. noch ein gutes Buch oder so wo es genauer erklärt wird?
Ansonten nochmal big thx, ihr seit spitze!
So ganz stimmt das ja eigendlich nicht. Strukturen sind eigendlich nur Bauanleitungen die erst mit der Definition einer Variablen zum Leben erweckt werden und somit nicht wirklich direkt in Code umgewandelt werden.Kaeru Gaman hat geschrieben:das genau ist der punkt. [...]a14xerus hat geschrieben:Das hat auch nichts mit einer Initialisation (Init()) zu tun, da Structuren sowieso schon zur Compilezeit "umgewandelt" werden.
Strukturierte VariablenLigatur hat geschrieben:So ganz stimmt das ja eigentlich nicht. Strukturen sind eigentlich nur Bauanleitungen die erst mit der Definition einer Variablen zum Leben erweckt werden und somit nicht wirklich direkt in Code umgewandelt werden.Kaeru Gaman hat geschrieben:das genau ist der punkt. [...]a14xerus hat geschrieben:Das hat auch nichts mit einer Initialisation (Init()) zu tun, da Structuren sowieso schon zur Compilezeit "umgewandelt" werden.
oder
Variablen mit Struktur
oder sowas..
man kann ja auch kleinkariert sein
So ganz stimmt das ja eigendlich nicht. Strukturen sind eigendlich nur Bauanleitungen die erst mit der Definition einer Variablen zum Leben erweckt werden und somit nicht wirklich direkt in Code umgewandelt werden.
Mit Defined(bla, #PB_Structure) wird aber abgefragt, ob die STRUKTUR definiert wurde, und nicht ob eine Variable definiert wurde. Und die Struktur wurde definiert, d.h. der Compiler weiß darüber bescheid und gibt Dir ein "jawohl" zurück.
Mit Defined(bla, #PB_Structure) wird aber abgefragt, ob die STRUKTUR definiert wurde, und nicht ob eine Variable definiert wurde. Und die Struktur wurde definiert, d.h. der Compiler weiß darüber bescheid und gibt Dir ein "jawohl" zurück.
ZeHa hat bisher kein Danke erhalten.
Klicke hier, wenn Du wissen möchtest, woran ihm das vorbeigeht.
-
- Beiträge: 17389
- Registriert: 10.11.2004 03:22
ist aber ebenso wie SizeOf() eine Compilerdirektive/funktion und keine Laufzeitfunktion,
wird also zur kompilezeit durch eine konstante ersetzt.
zur laufzeit wird kein wert zurückgegeben, sondern nur eine konstante interpretiert.
wird also zur kompilezeit durch eine konstante ersetzt.
zur laufzeit wird kein wert zurückgegeben, sondern nur eine konstante interpretiert.
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Der Weise weiß, dass er ein Narr ist.
- 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
Code: Alles auswählen
If Defined()
Defined ergibt doch nur im Zusammenhang mit CompilerIF einen Sinn.
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.
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Stimmt, bin ich noch gar nicht drauf gekommen, und ein Compilerif in einer Funktion, welches bezwecken soll, das etwas nur einmal gemacht wird ist schlichtweg unmöglich...ts-soft hat geschrieben:ist ja ziemlich sinnlos und verbraucht evtl. noch 4 Bytes,Code: Alles auswählen
If Defined()
Defined ergibt doch nur im Zusammenhang mit CompilerIF einen Sinn.
Somit ist allein das If defined() schon Schwachsinn, weil defined nur einmal vom Compiler durch eine konstante ersetzt wird, die procedure aber 2 mal aufgerufen wird
Also alles einfach totaler Schwachsinn
Man definiert Strukturen einfach am Anfang des Codes und fertig
- Kai
- Beiträge: 264
- Registriert: 29.09.2005 20:58
- Computerausstattung: iMac 2019
- Wohnort: Hannover
- Kontaktdaten:
Und ich bin so froh das ich diese Frage gestellt habe,a14xerus hat geschrieben:Stimmt, bin ich noch gar nicht drauf gekommen, und ein Compilerif in einer Funktion, welches bezwecken soll, das etwas nur einmal gemacht wird ist schlichtweg unmöglich...ts-soft hat geschrieben:ist ja ziemlich sinnlos und verbraucht evtl. noch 4 Bytes,Code: Alles auswählen
If Defined()
Defined ergibt doch nur im Zusammenhang mit CompilerIF einen Sinn.
Somit ist allein das If defined() schon Schwachsinn, weil defined nur einmal vom Compiler durch eine konstante ersetzt wird, die procedure aber 2 mal aufgerufen wird
Also alles einfach totaler Schwachsinn
Man definiert Strukturen einfach am Anfang des Codes und fertig
denn nun weiß auch ich das.