Seite 2 von 6
Verfasst: 16.02.2005 23:57
von remi_meier
Lol
PS: Wir sind im Anfängerforum
Re: Structure an andere Structure kopieren
Verfasst: 16.02.2005 23:58
von Deeem2031
Der Code hat übrigens einen Fehler, in der Structure steht nämlich zweimal "Spieler_5.s".
Erstaunlich das PB da keinen Fehler ausgibt...
Verfasst: 17.02.2005 00:01
von remi_meier
Stimmt! Genauso wie mit:
Structure Test
*p.BYTE
p.l
EndStructure
Re: Structure an andere Structure kopieren
Verfasst: 17.02.2005 02:24
von traumatic
Deeem2031 hat geschrieben:Erstaunlich das PB da keinen Fehler ausgibt...
Anscheinend nimmt PureBasic nur die erste Variable...
Code: Alles auswählen
Structure bla
bla.b
bla.w
bla.l
bla.f
bla.s
EndStructure
*kopschüttel*
Verfasst: 17.02.2005 08:26
von DrShrek
'Erstaunlich das PB da keinen Fehler ausgibt... '
Habs mal als BUG ins Englische Forum gesetzt.
Verfasst: 17.02.2005 08:48
von DrShrek
Lupo hat geschrieben:...Wie könnte ich denn aus der structure die Anzahl der Elemente rauskriegen - ok die weis ich ja von der Definition, aber besser
wäre es wenn man das auslesen könnte.
Wenn ich das weis wie komme ich dann zu den pointern in den
arrays um mit copymemorystring die strings zu übergeben
wenn ich die elementnamen nicht eintippen will ??
Du kennst den Structure Aufbau.
Warum möchtest Du dann plötzlich die Elementnamen nicht mehr eintippen?
Ich habe auch den Wunsch nach einen CopyMemoryStructure() ins englische Forum gestellt.
Verfasst: 17.02.2005 10:41
von Lupo
Ich hab noch ne andere Structure mit über 60 Einträgen, das ist
das Inventar (Bälle, Dressen und ander Dinge was man so braucht) und
das kann sich auch mal ändern und da will ich nicht 2x 60 Zeilen wegen der Übergabe an die Arrays eintippen, das ist ja öde
Ich möcht halt coden und nicht tippen
Das ist super das du das im englishen Forum gepostet hast.
Wie lang wird das denn dauern bis es das CopyMemoryStructure()
gibt ???
Thx 4 eure Mühe
LUPO
Verfasst: 17.02.2005 10:54
von DrShrek
Lupo hat geschrieben:...
Ich möcht halt coden und nicht tippen
...
Wo liegt der Unterschied? Versuchs doch mal mit Copy/Paste und Suchen/Ersetzen.
Lupo hat geschrieben:... Wie lang wird das denn dauern bis es das CopyMemoryStructure() gibt ??? ...
Frag mal den Andre, vieleicht kann der etwas 'Druck' auf Fred ausüben?
Verfasst: 17.02.2005 11:08
von freedimension
Vielleicht sollte Lupo uns mal sagen, was genau er vorhat.
Ich meine jetzt nicht das Kopieren einer Struktur sondern das
eigentliche Ziel. Mir kommt es so vor, als hätte er sich hier auf
eine Lösungsmöglichkeit fixiert welche mir doch arg umständlich
vorkommt.
Ist auch kein Problem, er ist ja noch Anfänger und das ist sicherlich
jedem von uns schon mehrere Male passiert dass man den Wald vor
lauter Bäumen nicht mehr sieht.
Ich denke er könnte einiges lernen wenn wir ihm für sein eigentliches
Ziel alternative, einfachere Wege aufzeigen.
Die jetzige Diskussion wird ihn wahrscheinlich eher verwirren als
weiterhelfen schätze ich.
Gruß aus dem verschneiten Stuttgart
Mirko
Verfasst: 17.02.2005 14:00
von Leo
Code: Alles auswählen
;Funktioniert nur mit longs >_<
Procedure CopyStructure(source,dest,size.l)
For I = 0 To size Step 4
PokeL(dest+I,PeekL(source+I))
Next
EndProcedure
;Example
Structure struct
a.l
b.l
c.l
d.s
EndStructure
Var1.struct
Var2.struct
Var1\a = 5
Var1\b = 6
Var1\c = 15
Var1\d = "hallo"
Debug "Inhalt von Var1:"
Debug Var1\a
Debug Var1\b
Debug Var1\c
Debug "Inhalt von Var2:"
Debug Var2\a
Debug Var2\b
Debug Var2\c
Debug "Var1 in Var2 kopieren..."
CopyStructure(@Var1,@Var2,SizeOf(struct))
Debug "Inhalt von der vorher leeren variable Var2:"
Debug Var2\a
Debug Var2\b
Debug Var2\c
;Das gleiche Problem wie bei CopyMemory:
Debug ""
Debug "String-Problem(Var2\d):"
Debug Var2\d
Var1\d = ">_<"
Debug "Nach veränderung von Var1\d:"
Debug Var2\d
Das is doch schonmal ein anfang, nur dass es nur mit longs geht, und bei strings das gleiche problem wie bei CopyMemory entsteht..
