AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language StrToInt exeption bei Zahlen, die eigentlich drüber sind
Thema durchsuchen
Ansicht
Themen-Optionen

StrToInt exeption bei Zahlen, die eigentlich drüber sind

Ein Thema von kagi3624 · begonnen am 1. Apr 2020 · letzter Beitrag vom 1. Apr 2020
Antwort Antwort
kagi3624

Registriert seit: 3. Feb 2020
138 Beiträge
 
Delphi 6 Enterprise
 
#1

StrToInt exeption bei Zahlen, die eigentlich drüber sind

  Alt 1. Apr 2020, 12:55
Delphi-Version: 6
Hallo, ich kann kein StrToInt auf Zahlen werfen, die über maxint gehen. Meine aktuelle Zahl ist über 6 Milliarden. Was kann ich da einsetzen? Gibt es irgendeine Standardfunktion?
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

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

AW: StrToInt exeption bei Zahlen, die eigentlich drüber sind

  Alt 1. Apr 2020, 13:09
StrToInt64, ist aber vielleicht noch nicht in Delphi 6 enthalten.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Delphi.Narium

Registriert seit: 27. Nov 2017
2.419 Beiträge
 
Delphi 7 Professional
 
#3

AW: StrToInt exeption bei Zahlen, die eigentlich drüber sind

  Alt 1. Apr 2020, 13:58
StrToFloat müsste auch unter Delphi 6 mit "übergroßen" Ints zurechtkommen.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

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

AW: StrToInt exeption bei Zahlen, die eigentlich drüber sind

  Alt 1. Apr 2020, 14:45
Mit dem uralten Delphi-Referenz durchsuchenVal sollte es auch gehen, falls Delphi-Referenz durchsuchenStrToInt64 noch fehlt.

Sowie der Weg mit einem Cast über Variant und dessen Konvertierungsfunktionen.
Delphi-Quellcode:
var
  s: string;
  v: Variant;
  i: Int64;

s := '123456789123456789';
i := Variant(s);

// oder falls es nicht direkt geht
s := '123456789123456789';
v := s;
i := v;



Achtung, in alten Delphis gab es noch ein paar Bugs bei 64 Bit-Integern. Dort waren ein paar der impliziten Konvertierungs- und Rechenfunktionen für UInt64 und Int64 teilweise falsch zugerodet.
So lange du nur 63 Bit und keine negativen Zahlen nutzt, wird es keine Probleme geben, ansonsten mußt du etwas aufpassen.
Falls du z.B. mit UInt64 rechnen willst, aber das Ergebnis nicht stimmt, weil intern Int64 verwendet wurde.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests

Geändert von himitsu ( 1. Apr 2020 um 14:52 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Dalai
Dalai

Registriert seit: 9. Apr 2006
1.680 Beiträge
 
Delphi 5 Professional
 
#5

AW: StrToInt exeption bei Zahlen, die eigentlich drüber sind

  Alt 1. Apr 2020, 15:14
StrToInt64 gibt es bereits in Delphi 5.

Grüße
Dalai
  Mit Zitat antworten Zitat
Antwort Antwort


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 14:02 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