Seite 1 von 1

Data - Anzahl

Verfasst: 28.03.2008 14:19
von Tombi
Hallo,
Suche ergab leider keine passenden Treffer.

Möchte herrausfinden wieviele Zeilen in einer DataSection vorhanden sind und wieviele Werte eine Zeile beinhaltet.

Z.b.:

Data.l 1,1,1,1,1
Data.l 1,1,1,1,1
Data.l 1,1,1,1,1

Ich sollte ich zurückbekommen das es 3 Zeilen und 5 Werte jeweils sind.

Verfasst: 28.03.2008 14:25
von #NULL
vielleicht so

Code: Alles auswählen


DataSection
lab1:
Data.l 1,1,1,1,1
Data.l 1,1,1,1,1
lab2:
EndDataSection

count = (?lab2-?lab1) / SizeOf(Long)
Debug count
naja gut, nicht ganz was du wolltest. 8)

Verfasst: 28.03.2008 14:52
von mk-soft
Auch wenn mehrere Zeilen sind liegen die Daten nach ein ander im Speicher.
Arbeite dir eine Daten Strukture und Kennung aus.

Verfasst: 28.03.2008 16:12
von Kaeru Gaman
da eine DataSection absolut Hardgecoded wird, besteht keine notwendigkeit für eine solche funktion.

Code: Alles auswählen

#Zeilen = 3
#Spalten = 5

Data.l 1,1,1,1,1
Data.l 1,1,1,1,1
Data.l 1,1,1,1,1 
weil du die Datazeilen selber hinschreiben musst, kannst du auch die Konstanten selber hinschreiben.

Verfasst: 28.03.2008 20:31
von NicTheQuick
Und wie mk-soft schon gesagt hat, sind die beiden Codes das selbe:

Code: Alles auswählen

Data.l 1,1,1,1,1
Data.l 1,1,1,1,1
Data.l 1,1,1,1,1

Code: Alles auswählen

Data.l 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
Du könntest es allerdings so machen:

Code: Alles auswählen

Data.l 5,3
Data.l 1,1,1,1,1
Data.l 1,1,1,1,1
Data.l 1,1,1,1,1
Dann liest du mit 'Read' erst Zeile und Spalte aus und dann die Daten.

Verfasst: 28.03.2008 21:55
von #NULL

Code: Alles auswählen


l1=#PB_Compiler_Line+3
DataSection
lab1:
Data.l 1,1,1,1,1
Data.l 1,0,0,0,1
Data.l 1,1,1,1,1
lab2:
EndDataSection
l2=#PB_Compiler_Line-2

count = (?lab2-?lab1) / SizeOf(Long)
Debug "elemente:"
Debug count
Debug "zeilen:"
Debug l2-l1
Debug "spalten:"
Debug count / (l2-l1)

:wink: ..geht allerdings nur, wenn du das format einhälst und alle zeilen gleich lang sind.

Verfasst: 29.03.2008 13:11
von NicTheQuick
:lol:
Witzige Idee! :allright: