GLBasic forum

Main forum => Bug Reports => Topic started by: blastar on 2008-Apr-13

Title: Array (DIM) als GLOBAL = seltsamer syntax!?!?
Post by: blastar on 2008-Apr-13
arrays werden automatisch scheinbar IMMER als global gehandhabt, nicht weiter schlimm aber erzeugt im debugmode eine warnung:
Code (glbasic) Select
DIM TEST[100]
-> "test.gbas"(1) warning : implicitly created GLOBAL  : TEST]
allerdings will ich im debug-mode diese warnungen nicht sehen also habe ich versucht ein array als global zu erklären... problematisch!
Code (glbasic) Select
GLOBAL DIM TEST[100]
-> "test.gbas"(1) error : syntax error

GLOBAL DIM TEST[]
-> "test.gbas"(1) error : syntax error
mit ein wenig rumprobieren habe dann ich eine lösung gefunden aber der syntax ist nicht logisch... wo ist denn da das DIM?
Code (glbasic) Select
GLOBAL TEST[]
REDIM TEST[100]
-> compiling
...also kein richtiger bug sondern eher ein schönheitsfehler... oder habe ich einen denkfehler?
Title: Array (DIM) als GLOBAL = seltsamer syntax!?!?
Post by: Schranz0r on 2008-Apr-13
Das ist normal meines wissens nach :)

GLOBAL Test[]  //ist ein offenes Array
REDIM Test[100]  // Dimensioniert das ganze dann


Ganz normal, hat Gernot auch so in ein paar Beispielen gemacht!
Title: Array (DIM) als GLOBAL = seltsamer syntax!?!?
Post by: Kitty Hello on 2008-Apr-13
und LOCAL feld[]
DIM feld[100]
Title: Re: Array (DIM) als GLOBAL = seltsamer syntax!?!?
Post by: D2O on 2009-Sep-20
?hmmm, hat sich da was ge?ndert ?

Code (glbasic) Select
GLOBAL layer0%[][]
DIM layer0%[100][100]


Quote_______________________________________
*** Configuration: WIN32 ***
precompiling:
GPC - GLBasic Precompiler V.7.045 SN: a06175c - 3D, NET
"test1.gbas"(6) error : syntax error

Edit:/// Mein fehler
es muss auch bei mehrdimensionalen Arrays so heisen:
Code (glbasic) Select
GLOBAL layer0%[]  //<<<<<
DIM layer0%[100][100]

und nicht so,

Code (glbasic) Select
GLOBAL layer0%[][] //<<<<
DIM layer0%[100][100]

Title: Re: Array (DIM) als GLOBAL = seltsamer syntax!?!?
Post by: Schranz0r on 2009-Sep-20
LOL das war schon immer so :D
Code (glbasic) Select

GLOBAL Map[]
DIM Map[layer][x][y]