AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

array[1..10] auf Wert prüfen?

Ein Thema von MicMic · begonnen am 9. Aug 2018 · letzter Beitrag vom 9. Dez 2018
Antwort Antwort
Seite 4 von 6   « Erste     234 56      
Benutzerbild von bernau
bernau

Registriert seit: 1. Dez 2004
Ort: Köln
1.268 Beiträge
 
Delphi 11 Alexandria
 
#31

AW: array[1..10] auf Wert prüfen?

  Alt 15. Aug 2018, 00:10
Schau mal hier

Dort ist extra angegeben, dass die Variable nach Schleifendurchlauf undefiniert ist.

Durch Codeoptimierung des Compilers "könnte" die Variable nicht den erwarteten Wert haben. Nur weil du jetzt keinen Codeschnipsel bekommst, der das zeigen kann, bedeutet es nicht, dass es nicht doch passieren kann.

Außerdem kann mit einer neuen Compilerversion das Verhalten des bestehenden "funktionierenden" Codes verändert werden. Siehst du schon, dass FPC und Delphi den Code unterschiedlich ausführen.

Ich wäre da sehr vorsichtig.
Gerd
Kölner Delphi Usergroup: http://wiki.delphitreff.de
  Mit Zitat antworten Zitat
Benutzerbild von KodeZwerg
KodeZwerg

Registriert seit: 1. Feb 2018
3.685 Beiträge
 
Delphi 11 Alexandria
 
#32

AW: array[1..10] auf Wert prüfen?

  Alt 15. Aug 2018, 07:02
Dort ist extra angegeben, dass die Variable nach Schleifendurchlauf undefiniert ist.
Nee.
Zitat:
FOR-Loop variable '%s' may be undefined after loop
may = könnte.
Lustig das Du sowas für meine Delphi Version gefunden hast.
Gruß vom KodeZwerg
  Mit Zitat antworten Zitat
Benutzerbild von bernau
bernau

Registriert seit: 1. Dez 2004
Ort: Köln
1.268 Beiträge
 
Delphi 11 Alexandria
 
#33

AW: array[1..10] auf Wert prüfen?

  Alt 15. Aug 2018, 09:17
Nee.
Zitat:
FOR-Loop variable '%s' may be undefined after loop
may = könnte.
Das reicht doch schon um eine Variable als undefiniert anzusehen. Außer ich weiß, wann die Variable undefiniert sein könnte.

Gerd
Kölner Delphi Usergroup: http://wiki.delphitreff.de
  Mit Zitat antworten Zitat
Benutzerbild von KodeZwerg
KodeZwerg

Registriert seit: 1. Feb 2018
3.685 Beiträge
 
Delphi 11 Alexandria
 
#34

AW: array[1..10] auf Wert prüfen?

  Alt 15. Aug 2018, 09:33
Das "may/könnte" gibt eher an das es am Programmierer liegt dafür Sorge zu tragen ob etwas un-/definiert ist.
Gruß vom KodeZwerg
  Mit Zitat antworten Zitat
Schokohase
(Gast)

n/a Beiträge
 
#35

AW: array[1..10] auf Wert prüfen?

  Alt 15. Aug 2018, 09:42
Das "may/könnte" gibt eher an das es am Programmierer liegt dafür Sorge zu tragen ob etwas un-/definiert ist.
Das „may“ gibt an, dass bei der Entwicklung des Compilers kein Wert darauf gelegt wird, dass in der Schleifenvariable nach der Schleife ein bestimmter Wert enthalten ist auf den man sich verlassen kann.

Wer sich darauf verlässt, ist sozusagen von allen guten Geistern verlassen.
  Mit Zitat antworten Zitat
Benutzerbild von KodeZwerg
KodeZwerg

Registriert seit: 1. Feb 2018
3.685 Beiträge
 
Delphi 11 Alexandria
 
#36

AW: array[1..10] auf Wert prüfen?

  Alt 15. Aug 2018, 09:50
Schlussendlich, da es ein "may" ist, könnten alle Aussagen zutreffen. Punkt, Ende und abgehakt.
Gruß vom KodeZwerg
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.136 Beiträge
 
Delphi 12 Athens
 
#37

AW: array[1..10] auf Wert prüfen?

  Alt 15. Aug 2018, 11:36
Egal ob "geht garnicht" oder "geht eventuell nicht",
das Verhalten ist so nicht vorgegeben, also kann/darf man sich nicht auf sowas verlassen.

Außer in Ausnahmefällen, kann darf sowas niemals "immer" in Produktivcode verwendet werden.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
Benutzerbild von Sherlock
Sherlock

Registriert seit: 10. Jan 2006
Ort: Offenbach
3.763 Beiträge
 
Delphi 11 Alexandria
 
#38

AW: array[1..10] auf Wert prüfen?

  Alt 15. Aug 2018, 11:55
Schlussendlich, da es ein "may" ist, könnten alle Aussagen zutreffen. Punkt, Ende und abgehakt.
Das mag jetzt hart klingen, vielleicht verletzend, muss aber so gesagt werden:
Ein Entwickler, der einen Fall ignoriert, dessen Auftreten explizit erwähnt wird, sollte den Beruf wechseln.

In diesem Sinne, nix für ungut. Hier haben sich alle Lieb.

Sherlock
Oliver
Geändert von Sherlock (Morgen um 16:78 Uhr) Grund: Weil ich es kann
  Mit Zitat antworten Zitat
Benutzerbild von KodeZwerg
KodeZwerg

Registriert seit: 1. Feb 2018
3.685 Beiträge
 
Delphi 11 Alexandria
 
#39

AW: array[1..10] auf Wert prüfen?

  Alt 15. Aug 2018, 12:36
Bestimmt ist es so wie Ihr schreibt und jede Compiler Warnung "Variable X may not be initialized" ist zu 100% definitiv nicht initialisiert.... einfach nur dumm so eine Aussage. Klar sollte man sich Gedanken machen wieso der Compiler mir so etwas erzählt. Aber es bleibt bei einem MAY. Apropo may, mayday mayday, bin raus hier.

Mir ging es nur um Bernaus Übersetzung und nicht irgend welche Code-Schnippsel oder irgend ein anderer Zusammenhang.
Gruß vom KodeZwerg
  Mit Zitat antworten Zitat
Benutzerbild von Neutral General
Neutral General

Registriert seit: 16. Jan 2004
Ort: Bendorf
5.219 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#40

AW: array[1..10] auf Wert prüfen?

  Alt 15. Aug 2018, 12:51
Hier haben sich in einem Projekt eine ganze Menge Warnungen dieser Art angesammelt und wir sind jetzt dran die ganzen Warnungen etc anzugehen um potenzielle Fehlerquellen auszuschließen.
Habe schon unzählbare Warnungen dieser Art korrigiert und jedes einzelne Mal hatte der Compiler Recht und die Variable WAR nicht initialisiert.

Von daher kann ich dir erfahrungsgemäß sagen, dass zu 99-100% diese Warnung ernst zu nehmen ist und wenn du glaubst der Compiler hat Unrecht dann ist das Problem wahrscheinlich dass der Compiler mehr weiß als du (und Recht hat).
Ich hatte jetzt den Fall dass viele dieser Warnungen aufgrund von "Glück" und "Magie" in einem 32-Bit Programm keinen Ärger machen.
Nachdem ich das Programm dann als 64-Bit exe compiliert habe, haben sich eine ganze Menge dieser Warnungen in ziemlich zuverlässige Laufzeitfehler verwandelt.
Michael
"Programmers talk about software development on weekends, vacations, and over meals not because they lack imagination,
but because their imagination reveals worlds that others cannot see."
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 4 von 6   « Erste     234 56      


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:53 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