[phpBB Debug] PHP Warning: in file [ROOT]/ext/tas2580/privacyprotection/cron/task/anonymize_ip.php on line 83: A non-numeric value encountered
Inoffizielles deutsches Xbase-Forum • Löschen einer Zeile aus einem mehrdimensionalen Array
Seite 1 von 1

Löschen einer Zeile aus einem mehrdimensionalen Array

Verfasst: Fr, 13. Mär 2009 16:27
von gina77
Hallo

Nun habe ich wieder mal eine Frage.

Ich habe ein mehrdimensionales Array mit fünf Spalten und beliebig viele Zeilen. Mit dem Befehl ARemove oder ADel kann man einzelne Elemente löschen, aber wie sieht es mit einer ganzen Zeile aus?

Vielen Dank

Gruss gina77

Re: Löschen einer Zeile aus einem mehrdimensionalen Array

Verfasst: Fr, 13. Mär 2009 16:31
von Tom
Eine Zeile ist ein Element.

Code: Alles auswählen

a:= {{1,2,3},{4,5,6},{7,8,9}}
aRemove(a,2)
? a // Ergebnis: {{1,2,3},{7,8,9}}

Re: Löschen einer Zeile aus einem mehrdimensionalen Array

Verfasst: Fr, 13. Mär 2009 17:06
von gina77
Vielen Dank. Habe irgendein Überlegungsfehler gemacht. Dachte wohl es gelete nur für ein eindimensionales Array.

Re: Löschen einer Zeile aus einem mehrdimensionalen Array

Verfasst: Sa, 14. Mär 2009 14:41
von brandelh
gina77 hat geschrieben:Vielen Dank. Habe irgendein Überlegungsfehler gemacht. Dachte wohl es gelete nur für ein eindimensionales Array.
Hi,

in XBase++ (und Clipper) wird ein mehrdimensionales Array immer als eindimensionales Array verwaltet,
die jeweiligen Elemente können dann - müssen aber nicht - selbst Arrays sein.

1. Dimmension 2. Dimmension (falls vorhanden)

Code: Alles auswählen

A[1]=1               -
A[2]="C"             -
A[3]=4               -   
A[4]={1,2,3,4}    A[4,x]
A[5]=date(x)       -
A[6]=.t.              -
das macht Xbase++ Arrays so flexibel ;-)

len(A[2]) = Länge von String "C", hier also 1
len(A[4]) = Anzahl der Elemente im Array, hier 4

etc.