Structure

Für allgemeine Fragen zur Programmierung mit PureBasic.
andi256
Beiträge: 100
Registriert: 06.11.2004 11:23
Computerausstattung: PB 5.30 (x64) Win7
Wohnort: Österreich

Structure

Beitrag von andi256 »

kann mir einer erklären warum Bsp1 geht und Bsp2 nicht ???

Code: Alles auswählen

#maxlange = 500

Structure blo
 bl.b[#maxlange]
 bllange.l
 verwendet.l
EndStructure

Structure ablo
 ablo.blo[#maxlange]
 ablolange.l
EndStructure

Procedure sort()
Delay(10)
EndProcedure

sblalt.ablo
sblneu.ablo
sort()
Debug SizeOf(ablo)

Code: Alles auswählen

#maxlange = 500

Structure blo
 bl.b[#maxlange]
 bllange.l
 verwendet.l
EndStructure

Structure ablo
 ablo.blo[#maxlange]
 ablolange.l
EndStructure

Procedure sort()
Delay(10)
sblalt.ablo
sblneu.ablo
EndProcedure

sort()
Debug SizeOf(ablo)
Danke Andi256
Benutzeravatar
wichtel
Beiträge: 150
Registriert: 09.09.2004 08:35
Wohnort: Hattersheim

Beitrag von wichtel »

komisch.
mit
Procedure sort()
Delay(10)
Global sblalt.ablo
Global sblneu.ablo
EndProcedure
geht es.

Aber irgendwie sehe ich keinen Grund warum sizeof nichts ausgibt und auch keinen Fehler erzeugt...
PB / jaPBe jeweils aktuellste Version, seit 3.62 dabei, XP sp3 de/en & W7 en
Benutzeravatar
freedimension
Admin
Beiträge: 1987
Registriert: 08.09.2004 13:19
Wohnort: Ludwigsburg
Kontaktdaten:

Beitrag von freedimension »

Wie sieht es aus, wenn du für Struktur und Element jeweils einen anderen Namen nimmst, also nicht 2x "ablo"?
Beginne jeden Tag als ob es Absicht wäre!
Bild
BILDblog
Fartan
Beiträge: 2
Registriert: 18.04.2005 20:30

Beitrag von Fartan »

SizeOf(ablo)=254004
Ein halber Megabyte ist wohl zuviel für lokale Variablen.
andi256
Beiträge: 100
Registriert: 06.11.2004 11:23
Computerausstattung: PB 5.30 (x64) Win7
Wohnort: Österreich

Beitrag von andi256 »

@wichtel
funzt bei mir auch nicht ...

ausser ich deklariere die Variablen in der Main als Global

@freedimension
Wie sieht es aus, wenn du für Struktur und Element jeweils einen anderen Namen nimmst, also nicht 2x "ablo"?
negativ

@fartan
254004 ... na eher ein viertel MB :mrgreen:

ich weis das ist viel ....

war aber nur ein Beispiel ... geht nicht sobald die structure grösser ist als 8140Byte ... und das lässt sich in meinen Fall nicht vermeiden ...

finds nur unschön die Varialbe ausserhalb der procedure als gobal zu deklarieren ... wo ich sie in meiner anwendung nur sehr selten brauche..

Andi256
Antworten