Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht Das deutsche QBasic- und FreeBASIC-Forum
Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
 
FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen  RegistrierenRegistrieren
ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin
Zur Begleitseite des Forums / Chat / Impressum
Aktueller Forenpartner:

Variable Problem : /

 
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu FreeBASIC.
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
creepi



Anmeldungsdatum: 13.06.2010
Beiträge: 59

BeitragVerfasst am: 01.11.2012, 16:23    Titel: Variable Problem : / Antworten mit Zitat

Schein aufn kopf gefallen zu sein............
ich sitz hier, unter anderem seit gestern abend an ein problem das mich mehr als verwirrt.

lade x bilder in den speicher die jeweils einer anderen variable angehören.
Sagen wir mal alle von (1 to 8 )

Nun wird beim ablauf einfach ein bild einer anderen variable angezeigt.
Bis ich dahinter stieg dauerte das scho nen weilchen, dachte wäre ein script fehler das ich sie irgend wo falsch übergeben habe die info aber nope.

Bin just4fun hingegangen und hab Variable_X(20) gegeben.
Da sie doch nur bis 8 geht, dürfte doch kein inhalt vorhanden sein.
Dummerweise wird mir ein bild einer anderen Variable_XY angezeigt.

Wieso kann die ein inhalt haben obwohl die gar nicht bis 20 hoch geht bzw. wieso überhaupt ein inhalt einer ganz anderen mit komplett anderen name !?

Ich raff das nicht... hab sie als
dim shared xy( 1 to 8 ) as any ptr
usw.

Kennt das wer, ist es normal das man auf zb. (20) zugreifen kann obwohl die gar nicht gedimt wurde??

Gruß, Creepi


Edit um es evtl. deutlicher rüber zu bringen, nur als beispiel:
Zitat:
Dim shared bot_walk_n(1 to 8 ) As Any Ptr
Dim shared bot_walk_o(1 to 8 ) As Any Ptr
Dim shared bot_walk_s(1 to 8 ) As Any Ptr
Dim shared bot_walk_w(1 to 8 ) As Any Ptr

for i = 1 to 8
bot_walk_n(i) = png_load( "./pfadzurdatei/"& i &".png", PNG_TARGET_FBNEW )
bot_walk_o(i) = png_load( "./pfadzurdatei/"& i &".png", PNG_TARGET_FBNEW )
bot_walk_s(i) = png_load( "./pfadzurdatei/"& i &".png", PNG_TARGET_FBNEW )
bot_walk_w(i) = png_load( "./pfadzurdatei/"& i &".png", PNG_TARGET_FBNEW )
next i


wenn ich es zb. mit

Zitat:
Put(150,200), bot_walk_n(5), trans

Put(300,200), bot_walk_o(3), trans

Put(450,200), bot_walk_s(4), trans

Put(600,200), bot_walk_w(8 ), trans

ist alles klar doch wie kann es sein das zb
Zitat:
Put(150,200), bot_walk_n(20), trans

den inhalt von
Zitat:
Put(450,200), bot_walk_s(4), trans

hat !?

die dürften mit einander doch gar nichts zu tun haben.... : /
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
MOD
Fleißiger Referenzredakteur


Anmeldungsdatum: 10.09.2007
Beiträge: 1003

BeitragVerfasst am: 01.11.2012, 16:40    Titel: Antworten mit Zitat

Für das Einhalten des Bereichs eines Arrays bist du selbst verantwortlich. Wenn du einen höheren Index angibst, wird er einfach auf den Speicherbereich dahinter zugreifen, ob da was ist oder nicht. Bei dir liegt wohl zufällig das andere Array dahinter, sodass es irgendwie klappt, für gewöhnlich wird man für sowas mit Programmabstürzen belohnt. Wenn du mit -exx compilierst, wirst du deswegen auch eine Warnung vom Compiler erhalten.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
creepi



Anmeldungsdatum: 13.06.2010
Beiträge: 59

BeitragVerfasst am: 01.11.2012, 16:46    Titel: Antworten mit Zitat

ah ok.
Na ich dachte wenn ich eine zahl an gabe die es gar nicht gibt dürfte auch nichts zurück kommen. Das der nun auf den nächsten im speicher befindliche info zurückgreift wusst ich nicht.

danke : )
Nu heist es nach den fehler suchen... peinlich


...ich habs grinsen
hab an x stellen rum gewerkelt, code hier und da um geschrieben, getestet und blablub.
Am ende lag es an dem arry wo ich die einzelnen bilder rein haue und dann durch laufen lasse. Die, wo mit ich die bilder lade waren alle korrekt. Hab das komplett aufn kopf gestellt und wunderschön angelegt xD
Nur eben nicht da, wo ich sie dann rein lade......... die animation ging bis zu 13 bilder, richtig geladen ja aber beim verschieben in den array war nur bis max 8 erlaubt. Deshalb ging es wohl schief.....

War also der richtige gedanken anstoß den du mir gegeben hattest MOD lächeln
Nächste mal bin ich schlauer : D
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu FreeBASIC. Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.

 Impressum :: Datenschutz