Hallo zusammen,
ich bekomme es nicht hin ein zweidimensionales Array (Datentyp enum) in eine Unterfunktion zu übergeben. Geht das wirklich nur mit Strings/Char oder mache ich was falsch? Anbei ein Minimalbeispiel. In der Zeile mit *** bekomme ich die Fehlermeldungen "In einer Bereichszuweisung eines Arrays ist nur der Datentyp String und Char zulässig" und "Der Index ist ungültig" (siehe Screenshot).
Code
DEF test_arrayuebergabe ( )
ENUM FIELD_TYPE empty, cross, circle
DECL FIELD_TYPE field_status[3,3]
DECL INT ret, i, j
; *** Initialisierung ***
FOR i = 1 TO 3
FOR j = 1 TO 3
field_status[i,j] = #empty
ENDFOR
ENDFOR
ret = best_move(field_status[,]) ; ***
END
DEFFCT INT best_move (field_status[] : OUT)
DECL FIELD_TYPE field_status[]
RETURN 1 ; Dummywert
ENDFCT
Alles anzeigen