AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi FOR-Schleifenvariable 'ti' kann nach Durchlauf undefiniert..
Thema durchsuchen
Ansicht
Themen-Optionen

FOR-Schleifenvariable 'ti' kann nach Durchlauf undefiniert..

Ein Thema von Pseudemys Nelsoni · begonnen am 1. Dez 2004 · letzter Beitrag vom 1. Dez 2004
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von Pseudemys Nelsoni
Pseudemys Nelsoni

Registriert seit: 24. Dez 2002
Ort: Hamburg-Harburg
3.551 Beiträge
 
#1

FOR-Schleifenvariable 'ti' kann nach Durchlauf undefiniert..

  Alt 1. Dez 2004, 14:52
..sein


tag

Delphi-Quellcode:
        ti := 0;
                for ti := Low(myarray) to High(myarray) do
                begin

                end;


mag mir jemand sagen was hieran falsch ist? delphi meldet den fehler s.o
Mario
MSN: cyanide@ccode.de
  Mit Zitat antworten Zitat
Benutzerbild von sakura
sakura

Registriert seit: 10. Jun 2002
Ort: München
11.412 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: FOR-Schleifenvariable 'ti' kann nach Durchlauf undefinie

  Alt 1. Dez 2004, 14:54
Daran ist nichts falsch, aber wenn Du 'ti' nach dem Durchlauf der Schleife nutzt, dann kann es sein, dass darin kein sinnvoller Wert steht. Und das ist genau das, was Delphi sagt.

......
Daniel W.
Ich bin nicht zurück, ich tue nur so
  Mit Zitat antworten Zitat
Benutzerbild von Pseudemys Nelsoni
Pseudemys Nelsoni

Registriert seit: 24. Dez 2002
Ort: Hamburg-Harburg
3.551 Beiträge
 
#3

Re: FOR-Schleifenvariable 'ti' kann nach Durchlauf undefinie

  Alt 1. Dez 2004, 14:56
moin sakura,

kann ich das irgendwie abschalten? denn im code der schleife (hab ich hier rausgelassen weil es zu lang wäre) ist 100% kein fehler, ich benutze "ti" lediglich als index für das array. manchmal wenn ich so kompiliere -> projekt -> alle projekte kompilieren.... gehn die fehler weg, und manchmal kommen sie wieder wenn ich mit dem grünen pfeil kompiliere und starte. Das ist ziemlich nervig da ich das fehler fenster unten ewig wegklicken muss.
Mario
MSN: cyanide@ccode.de
  Mit Zitat antworten Zitat
Benutzerbild von sakura
sakura

Registriert seit: 10. Jun 2002
Ort: München
11.412 Beiträge
 
Delphi 11 Alexandria
 
#4

Re: FOR-Schleifenvariable 'ti' kann nach Durchlauf undefinie

  Alt 1. Dez 2004, 14:58
Zitat von Pseudemys Nelsoni:
kann ich das irgendwie abschalten?
Du kannst Warnungen generell abschalten, nur wäre es, *sorry*, dumm. Ändere den Code so, dass Du nach der Schleife 'ti' entweder nicht nutzt oder es neu initialisierst.

......
Daniel W.
Ich bin nicht zurück, ich tue nur so
  Mit Zitat antworten Zitat
Benutzerbild von Steve
Steve

Registriert seit: 2. Mär 2004
Ort: Würzburg
730 Beiträge
 
Delphi 2006 Personal
 
#5

Re: FOR-Schleifenvariable 'ti' kann nach Durchlauf undefinie

  Alt 1. Dez 2004, 15:00
Hi,

doppelklick doch mal auf die Hinweismeldung, dann springste automatisch zur Zeile, die dieser Hinweis betrifft. Der Fehler kommt eigentlich nur, wenn 'ti' außerhalb bzw. nach der Schleife benutzt wird!
Delphi-Quellcode:
...
FOR ti:=0 TO 5 DO
BEGIN
  myArray[ti] := 'test';
...
END;
...
myArray[ti] := 'huch'; //<<-- Hinweis vom Compiler

Gruß
Stephan
Stephan B.
Wer andern eine Grube gräbt ist Bauarbeiter!
Wer im Glashaus sitzt, sollte sich lieber im Dunkeln ausziehen!
Außerdem dieser Satz kein Verb...
  Mit Zitat antworten Zitat
Benutzerbild von alcaeus
alcaeus

Registriert seit: 11. Aug 2003
Ort: München
6.537 Beiträge
 
#6

Re: FOR-Schleifenvariable 'ti' kann nach Durchlauf undefinie

  Alt 1. Dez 2004, 15:04
Hi Pseudemys Nelsoni,

die Compileroptimierung hat mir z.B. mal eine Vorschleife von oben nach unten durchlaufen lassen, anstatt wie von mir geplant von unten nach oben (also downto anstatt to). Ich habe mich nicht weiter drum gekümmert. In deinem Fall lässt sich die Warnung umgehen: schreibe einfach nach der For-Schleife folgendes:
ti := High(myarray); Somit ist ti auch für den Compiler das was es sein sollte, und dein Problem ist erledigt.

Greetz
alcaeus
Andreas B.
Die Mutter der Dummen ist immer schwanger.
Ein Portal für Informatik-Studenten: www.infler.de
  Mit Zitat antworten Zitat
Benutzerbild von Pseudemys Nelsoni
Pseudemys Nelsoni

Registriert seit: 24. Dez 2002
Ort: Hamburg-Harburg
3.551 Beiträge
 
#7

Re: FOR-Schleifenvariable 'ti' kann nach Durchlauf undefinie

  Alt 1. Dez 2004, 15:04
@sakura, werd ich dann wohl machen müssen :\

@steve:

ich shcreibe gerade einen irc server, ich habe ca 90 case teile in so gut wie jedem benutz ich ti (temp integer *g*) als laufvariable, die FOR-schleife initialisiert die variable doch eigentlich, naja werd ichs von nun an eben selbst machen :\

@alc: oder so, thx auch dir


danke für die hilfe



BTW: coole smilies lol
Mario
MSN: cyanide@ccode.de
  Mit Zitat antworten Zitat
Benutzerbild von Steve
Steve

Registriert seit: 2. Mär 2004
Ort: Würzburg
730 Beiträge
 
Delphi 2006 Personal
 
#8

Re: FOR-Schleifenvariable 'ti' kann nach Durchlauf undefinie

  Alt 1. Dez 2004, 15:06
Hi,

deswegen ja der Doppelklick auf die Hinweismeldung, dann weißt Du, wo das 'ti' wohl doch mal außerhalb ner Schleife benutzt wird
Ohne Fehler keine Fehlermeldung

Gruß
Stephan
Stephan B.
Wer andern eine Grube gräbt ist Bauarbeiter!
Wer im Glashaus sitzt, sollte sich lieber im Dunkeln ausziehen!
Außerdem dieser Satz kein Verb...
  Mit Zitat antworten Zitat
Benutzerbild von Pseudemys Nelsoni
Pseudemys Nelsoni

Registriert seit: 24. Dez 2002
Ort: Hamburg-Harburg
3.551 Beiträge
 
#9

Re: FOR-Schleifenvariable 'ti' kann nach Durchlauf undefinie

  Alt 1. Dez 2004, 15:10
Zitat von Steve:
Hi,

deswegen ja der Doppelklick auf die Hinweismeldung, dann weißt Du, wo das 'ti' wohl doch mal außerhalb ner Schleife benutzt wird
Ohne Fehler keine Fehlermeldung

Gruß
Stephan


moin steve ^^,

jo klar weiss ich wo meine variable nochmal benutzt wird

mein code sieht ca so aus(und das 90~ mal):

Delphi-Quellcode:
 ti := 0;

case irgendwas of
  irgendwas1:
    begin
      for ti := Low(MyArray) to High(Myarray) do
      begin
        // irgendwas
      end;
    end;
  irgendwas2:
    begin
      for ti := Low(MyArray) to High(Myarray) do
      begin
        // irgendwas
      end;
    end;
  irgendwas...:
    begin
      for ti := Low(MyArray) to High(Myarray) do
      begin
        // irgendwas
      end;
    end;
  irgendwas90:
    begin
      for ti := Low(MyArray) to High(Myarray) do
      begin
        // irgendwas
      end;
    end;
end;
deswegen ist mir das egal ob die variable dann undefiniert wäre... nur die meldung hat mich halt gestört
Mario
MSN: cyanide@ccode.de
  Mit Zitat antworten Zitat
Benutzerbild von Shaman
Shaman

Registriert seit: 2. Nov 2003
Ort: Schweiz
407 Beiträge
 
Turbo Delphi für Win32
 
#10

Re: FOR-Schleifenvariable 'ti' kann nach Durchlauf undefinie

  Alt 1. Dez 2004, 15:10
Aber sagt mal...
Auch wenn der Copiler meckert, habe ich noch nie erlebt, dass nach
for I:= 0 to N do Irgendwas; I ungleich N+1 ist... Darauf kann man sich doch verlassen, oder?
Daniel Pauli
Looking for answers from the great beyond
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:45 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz