Problem mit String-array in Function
Übersicht

TichaBetreff: Problem mit String-array in Function |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hi leutz, hab mal wieddern prob ![]() ![]() Mit einer MySQL auslese lade ich in einer Funtion die Daten einer Tabbelle in einen arry. Dieser ist vom Typ String. Danach möchte ich einen part aus dem array in einer anderen funktion in einen string hinzufügen (" " + String$ + " "). Aber dann sagt mir der compiler, dass "Expression int cannot be indexed" . Muss ich den array in die function miteinbringen, obwohl er global deklariert ist? Wenn ja, wie mach ich das, denn wenn ich function(array$[x,y]) eingebe, gibt er mir den fehler aus, dass eine klammer zu viel drin ist. hier mal der code der funktionen funktion 1 Code: [AUSKLAPPEN] function load_user_schiffe() Query = "SELECT * FROM `schiff` WHERE besitzer ='"+ user[0,1] +"'" Result = MySQL.Query(Query) If Not Result Then Print("Error: Query failed") Print(" "+MySQL.GetError()) MySQL.Close() End EndIf Local rows:Int = String(result.Rows).toint() Print(String(Rows)+" Entrys:") Local i%,k%=0 Print( "rows:"+rows) Global user_schiffe:String[rows,50] For Row = EachIn Result For i = 0 To 49 user_schiffe[k,i]=Row.GetString(i) Next k=k+1 Next For k= 0 To rows-1 For i = 0 To 49 Print ("-" + user_schiffe[k,i] + "-") Next Next Result.Free() EndFunction funktion 2 Code: [AUSKLAPPEN] Function list_schiffe() Local lx%, ly% For i = 0 To 5 SetColor(255,255,255) 'DrawText("|" + user_schiffe[i,1] + "|" + user_schiffe[i,2] + "|",lx,ly) ly = ly + 10 Next SetColor(colora,colorb,colorc) EndFunction wo ist das problem dabei? |
||
Dreamora |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Dein Problem ist, dass dein Array nicht global ist.
Globale Daten kannst du NICHT in Funktionen deklarieren. Eine global in einer Funktion ist nichts anderes als ein Objekt das nicht gelöscht wird und beim nächsten Aufrufen der Funktion noch ihren alten Wert (e) haben wird. |
||
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. |
Ticha |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
das erklärt einiges bei meinen fehlermeldungen ^^
das problem ist nur, wie deklariere ich einen globalen array, wenn mir vor dem funktionsaufruf noch nicht klar ist, wieviele einträge der array haben wird? |
||
![]() |
simi |
![]() Antworten mit Zitat ![]() |
---|---|---|
Man kann das Array während der Laufzeit vergrössern... Die Daten bleiben erhalten.... Sowas nennt man Slices.....
-> https://www.blitzforum.de/foru...hp?t=12028 |
||
Ticha |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
ok
ich häng mich da mal dran danke ![]() |
||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group