Entwickler-Ecke

Grafische Benutzeroberflächen (VCL & FireMonkey) - umwandeln von Variablen


death-adders - Mi 25.06.08 13:27
Titel: umwandeln von Variablen
Hallo,

ich habe bereits verstanden, dass es in Delphi verschiedene Variabeltypen gibt um verschiedene "Sachen" abzulegen.

Habe ich nun also einen String aus einem Textfeld und möchte diesen in einen Real umwandeln:

Delphi-Quelltext
1:
2:
3:
4:
5:
var: zahl :real

begin
zahl := strtofloat(edit1.text)
...

Was ist ein float??
Warum heißt der Befehl zur umwandlung strtofloat? wäre strtoreal nicht irgendwie logischer??

Moderiert von user profile iconNarses: Delphi-Tags hinzugefügt


GericasS - Mi 25.06.08 13:29

Da Float sowas wie Gleitkommazahl heißt dürfte es damit klar sein =)

Also StrToFloat, einen String in eine Gleitkommazahl umwandeln.


LG

GericasS


Der nette Nachbar - Mi 25.06.08 13:31

Wenn du mich fragst gibt es in Delphi viel zu viele Datentypen.
Im Grundegenommen gibt es in der Programmierung bloss 5 Datentypen. Die restlichen Datentypen sind dann mehr optmierte Datentypen die auf ein Problemfeld zugeschnitten sind. Real ist nur der Obebegriff für Gleitkommatypen, zudenen dann Float, Double usw. usf dazugehören


death-adders - Mi 25.06.08 13:35

Aso gut, das ist klar ich wandle also nicht gezielt in einen String, sondern einfach in eine Gleitkommazahl, welche ich dann problemlos in einem String ablegen kann.


GericasS - Mi 25.06.08 13:40

user profile icondeath-adders hat folgendes geschrieben:
Aso gut, das ist klar ich wandle also nicht gezielt in einen String, sondern einfach in eine Gleitkommazahl, welche ich dann problemlos in einem String ablegen kann.


naja die Gleitkommazahl wird schon in einer Variable vom Datentyp Float abgelegt nicht in einem String oder reden wir jetzt aneinander vorbei ?


mkinzler - Mi 25.06.08 13:51

Denn Wein transportiert man ja auch im Fass oder in der Flasche, Kartoffeln im Sack und Orangem in Netz. Versuch mal Wein im Netz zu transportieren :wink:


death-adders - Mi 25.06.08 13:52

Sorry ich habe mich verschrieben, ich meinte natürlich, das die Gleitkommazahl dann problemlos in einer Variable des Typs "real" abgelegt werden kann.


GericasS - Mi 25.06.08 13:56

user profile iconmkinzler hat folgendes geschrieben:
Denn Wein transportiert man ja auch im Fass oder in der Flasche, Kartoffeln im Sack und Orangem in Netz. Versuch mal Wein im Netz zu transportieren :wink:


wunderschön metaphorisch ausgedrückt :zustimm:


Tilman - Mi 25.06.08 13:56

So könnte man es sagen. Ist blöd dass die Funktionen FloatToStr und StrToFloat heißen, ist aber nunmal so. Es gibt übrigens noch andere Fließkommatypen, z.B. Double.


death-adders - Mi 25.06.08 14:01

Danke für die Schnelle und qualitative Hilfe!! :D :flehan:


huuuuuh - Mi 25.06.08 14:02

user profile iconmkinzler hat folgendes geschrieben:
Denn Wein transportiert man ja auch im Fass oder in der Flasche, Kartoffeln im Sack und Orangem in Netz. Versuch mal Wein im Netz zu transportieren :wink:


[ot]naja, wein in flasche kann man auch im netz transportieren. oder gefrorener wein in blöcken da brauch man nichma mehr flaschen[/ot]


GericasS - Mi 25.06.08 14:07

user profile iconhuuuuuh hat folgendes geschrieben:
user profile iconmkinzler hat folgendes geschrieben:
Denn Wein transportiert man ja auch im Fass oder in der Flasche, Kartoffeln im Sack und Orangem in Netz. Versuch mal Wein im Netz zu transportieren :wink:


[ot]naja, wein in flasche kann man auch im netz transportieren. oder gefrorener wein in blöcken da brauch man nichma mehr flaschen[/ot]


wieso hab ich auf den Spruch mit dem gefrorenen Wein gewartet :wink: :lol:


Tilman - Mi 25.06.08 14:09

[OT]Wein kann man serwohl im Netz transportieren, wenn die Trauben groß genug sind :mahn: [/OT]


Timosch - Mi 25.06.08 14:12

user profile iconTilman hat folgendes geschrieben:
So könnte man es sagen. Ist blöd dass die Funktionen FloatToStr und StrToFloat heißen, ist aber nunmal so. Es gibt übrigens noch andere Fließkommatypen, z.B. Double.

Für Taschenrechner und co. sehr zu empfehlen: Extended. Aber sind ja alle in der Hilfe aufgelistet.


GericasS - Mi 25.06.08 14:20

user profile iconTimosch hat folgendes geschrieben:
user profile iconTilman hat folgendes geschrieben:
So könnte man es sagen. Ist blöd dass die Funktionen FloatToStr und StrToFloat heißen, ist aber nunmal so. Es gibt übrigens noch andere Fließkommatypen, z.B. Double.

Für Taschenrechner und co. sehr zu empfehlen: Extended. Aber sind ja alle in der Hilfe aufgelistet.


aber welche Taschenrechner stellt eine solche Zahl ( 1.1*10^4932 ) überhaupt noch da ? Ich mein das sind 19 Stellen..das kann doch nur ein GTR oder ?


huuuuuh - Mi 25.06.08 14:31

1.1*10^4932 hat ca. 4932 stellen?


Delete - Mi 25.06.08 14:39

@Tilman:[OT]Aber dann sind es ja WEINTRAUBEN und nicht Wein als Gesöff[/OT]


GericasS - Mi 25.06.08 14:45

user profile iconhuuuuuh hat folgendes geschrieben:
1.1*10^4932 hat ca. 4932 stellen?



sry brett vorm kopf :mrgreen: weiß auch nicht wie ich auf die 19 gekommen bin..


Timosch - Mi 25.06.08 15:01

user profile iconGericasS hat folgendes geschrieben:
user profile iconTimosch hat folgendes geschrieben:
user profile iconTilman hat folgendes geschrieben:
So könnte man es sagen. Ist blöd dass die Funktionen FloatToStr und StrToFloat heißen, ist aber nunmal so. Es gibt übrigens noch andere Fließkommatypen, z.B. Double.

Für Taschenrechner und co. sehr zu empfehlen: Extended. Aber sind ja alle in der Hilfe aufgelistet.


aber welche Taschenrechner stellt eine solche Zahl ( 1.1*10^4932 ) überhaupt noch da ? Ich mein das sind 19 Stellen..das kann doch nur ein GTR oder ?


Ein Rechner (ich meine jetzt einer für den PC, keinen reelen Taschenrechner) sollte soviele Stellen anzeigen können wie irgendwie möglich. Mich zumindest nervt die Begrenzung auf 10^100 (in Zehnerpotenzschreibweise; ausgeschrieben ist ja schon viel früher Schluss) bei meinem GTR massiv.


GericasS - Mi 25.06.08 15:02

Achso okay ich dachte schon :wink: