AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein IntToStr bereitet Probleme beim umstieg auf Delphi 12
Thema durchsuchen
Ansicht
Themen-Optionen

IntToStr bereitet Probleme beim umstieg auf Delphi 12

Ein Thema von Kishmet · begonnen am 10. Jan 2025 · letzter Beitrag vom 13. Jan 2025
Antwort Antwort
Seite 2 von 3     12 3      
Kishmet

Registriert seit: 29. Okt 2020
Ort: Großraum Stuttgart
43 Beiträge
 
Delphi 12 Athens
 
#11

AW: IntToStr bereitet Probleme beim umstieg auf Delphi 12

  Alt 10. Jan 2025, 13:39
Eigentlich ist das alles Schmutz weil es schlicht und ergreifend ein Fehler im Code ist und schon immer war... IntToStr, war schon immer die falsche Funktion an dieser Stelle. Mal schauen was für Fehler das jetzt nach sich zieht.

Mich würde immernoch interessieren was sich genau verändert hat, das dieser Fehler jetzt auftritt und vorher einfach ignoriert wurde, aber am Ende des Tages ist das egal.

Vielen lieben dank euch!
  Mit Zitat antworten Zitat
Blup

Registriert seit: 7. Aug 2008
Ort: Brandenburg
1.484 Beiträge
 
Delphi 12 Athens
 
#12

AW: IntToStr bereitet Probleme beim umstieg auf Delphi 12

  Alt 10. Jan 2025, 13:40
Nur wenn du tatsächlich Werte ab 2^63 oder größer hast.
Diese werden dann als negative Zahlen ausgegeben.
Also keine Verlust, eher eine Verfälschung.
  Mit Zitat antworten Zitat
Delphi.Narium

Registriert seit: 27. Nov 2017
2.524 Beiträge
 
Delphi 7 Professional
 
#13

AW: IntToStr bereitet Probleme beim umstieg auf Delphi 12

  Alt 10. Jan 2025, 13:42
Ist denn in beiden Delphi die Bereichsprüfung eingeschaltet? (Kompileroptionen vergleichen.)

Alternativ im Quelltext:
Delphi-Quellcode:
{$R-}
// Hier der Code, der den Fehler verursacht
{$R+} // Optional: Reaktivieren der Bereichsprüfung am Ende
Die Funktion ist überladen:

function IntToStr(Value: Integer): string;
function IntToStr(Value: Int64): string;

Int64() wäre dann die richtige Umwandlung.
$FFFFFFFFFFFFFFFF (16 F) sind aber auch für Int64 zuviel.
  Mit Zitat antworten Zitat
Kishmet

Registriert seit: 29. Okt 2020
Ort: Großraum Stuttgart
43 Beiträge
 
Delphi 12 Athens
 
#14

AW: IntToStr bereitet Probleme beim umstieg auf Delphi 12

  Alt 10. Jan 2025, 14:02
@delphi.narium : Ja es hat sich nichts weiter verändert. Wenn dann eine Grundeinstellung irgendwo im Compiler (Also von RAD Studio selbst eine Defaulteinstellung die von 11 auf 12 geändert wurde) von der ich so nichts weiß. Alles andere (Sprich Code und Projekteinstellungen) ist identisch, wie gesagt auch mit neuen Projekten passiert genau das gleiche.

Geändert von Kishmet (10. Jan 2025 um 14:03 Uhr) Grund: Verständlichkeit
  Mit Zitat antworten Zitat
Delphi.Narium

Registriert seit: 27. Nov 2017
2.524 Beiträge
 
Delphi 7 Professional
 
#15

AW: IntToStr bereitet Probleme beim umstieg auf Delphi 12

  Alt 10. Jan 2025, 14:10
Wenn die Bereichsprüfung in beiden Delphi an ist, dann müsste sie auch bei Delphi 11 den Fehler verursachen.

In dem Fall wäre mein Rückschluss: In Delphi 12 wurde ein Fehler behoben, der in Delphi 11 noch auftrat.
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.526 Beiträge
 
Delphi 12 Athens
 
#16

AW: IntToStr bereitet Probleme beim umstieg auf Delphi 12

  Alt 10. Jan 2025, 14:11
Für UInt32/Cardinal bzw. UInt64 gibt es übrigens UIntToStr.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Kishmet

Registriert seit: 29. Okt 2020
Ort: Großraum Stuttgart
43 Beiträge
 
Delphi 12 Athens
 
#17

AW: IntToStr bereitet Probleme beim umstieg auf Delphi 12

  Alt 10. Jan 2025, 14:34
@Uwe Raabe: Das ist der Weg. Werden wir jetzt auch so machen. Die Stelle ist wohl so, das wir hier bisher nicht wirklich einen ernstzunehmenden Fehler sondern eher nur einen Darstellungsfehler kreiert haben.

@delphi.narium: Was mich daran so nervt, ist das ich nirgends in den Releasenotes von Delphi irgendetwas dazu finde. Egal wo ich schaue, ich finde keinen Hinweis darauf das etwas repariert oder geändert worden ist, was dieses Verhalten erklären würde.

Euch allen Danke für die Hilfe!
  Mit Zitat antworten Zitat
Delphi.Narium

Registriert seit: 27. Nov 2017
2.524 Beiträge
 
Delphi 7 Professional
 
#18

AW: IntToStr bereitet Probleme beim umstieg auf Delphi 12

  Alt 10. Jan 2025, 14:58
Vielleicht ist dies keine bewusste Fehlerkorrektur sondern ein Nebeneffekt anderer Änderungen am Compiler.

Sprich: Der Fehler war nicht bekannt und wurde versehentlich behoben?
  Mit Zitat antworten Zitat
Blup

Registriert seit: 7. Aug 2008
Ort: Brandenburg
1.484 Beiträge
 
Delphi 12 Athens
 
#19

AW: IntToStr bereitet Probleme beim umstieg auf Delphi 12

  Alt 10. Jan 2025, 15:16
Wie bereits geschrieben es ist die Überlaufprüfung, nicht die Bereichsprüfung.
Delphi2007 gibt mit aktiver Überlaufprüfung ebenfalls einen Fehler aus.
  Mit Zitat antworten Zitat
Rolf Frei

Registriert seit: 19. Jun 2006
655 Beiträge
 
Delphi 11 Alexandria
 
#20

AW: IntToStr bereitet Probleme beim umstieg auf Delphi 12

  Alt 10. Jan 2025, 15:33
Das Problem ist einfach nur, dass beim Upgrade deiner D11 Projekte die Projekt-Einstrellugnen verändert wurden. War bei mir auch so. Habe dann einfach in den Projekt-Einstellugnen die Bereichs- und Überflussüberprüfung deaktiviert, damit diese gleich eingegstellt sind wie bei D11. Am Compiler wurde mMn nichts geändert, sondern einfach die Vorgabeprojekteinstellungen verändert. Aber wie schon geschrieben, war dein Code so eben nicht korrekt und würde mit eingeschaltetem Range oder Overflow Check auch unter D11 einen Fehler bringen.

Neu sind in den Projektoptionen (in englischem Delphi) unter Building/Delphi Compiler/Compiling alle Einträge unter "Runtime Errors" eingeschaltet, wo hingegen bis D11 nur der I/O Check aktiv war. Einfach die beiden anderen Check deaktivieren und alles sollte wieder so wie in D11 laufen.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 3     12 3      

 

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 12:15 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz