long double

Du bist neu in der Welt von C++? Dann schau hier herein!
Antworten
Mephistopheles
Beiträge: 3
Registriert: 25. Juli 2011 08:52

long double

Beitrag von Mephistopheles »

Hallo Leute,
ich hab schon mal ein bisschen gesucht, bin aber noch zu keiner Lösung gekommen.

Kann ich (und wenn ja wie) eine Variable als Datentyp "long double" deklarieren?

Mein Problem: Ich habe Zahlen, die einfach zu groß werden.
Bis 10^9 klappt es noch, aber darüber bekomme ich Werte der Größe -10^-8 ...
Eigentlich auch komisch, da ja double bis 10^35 gehen sollte.

Ich arbeite mit der aktuellen Version auf Linux (Ubuntu), habe das Programm allerdings noch nicht auf Win getestet.
Es sollte aber auf beiden Systemen laufen.

Kennt jemand das Problem und kann mir helfen?
upsala
Beiträge: 3946
Registriert: 5. Februar 2006 20:52
Wohnort: Landshut
Kontaktdaten:

Re: long double

Beitrag von upsala »

Was hat das mit Qt zu tun?

double sind im übrigen normalerweise ca. 10^308

Und wie hast du deine Annahmen getestet? Du hast doch nicht etwa eine Integer-Konstante an eine float/double/... Variable übergeben?
Mephistopheles
Beiträge: 3
Registriert: 25. Juli 2011 08:52

Re: long double

Beitrag von Mephistopheles »

nunja, das hat mit Qt zu tun, da ich mein Programm mit Qt erstelle.

Will ich es als "long double" wie in c++ deklarieren, also
long double variable1;
so erhalte ich eine Fehlermeldung.

Dementsprechend vermute ich, dass das Problem bei Qt liegt.

(Hab es natürlich auch mal in abgewandelter Version bei c++ versucht, und da klappts...)
upsala
Beiträge: 3946
Registriert: 5. Februar 2006 20:52
Wohnort: Landshut
Kontaktdaten:

Re: long double

Beitrag von upsala »

Mephistopheles hat geschrieben:nunja, das hat mit Qt zu tun, da ich mein Programm mit Qt erstelle.
...
Mephistopheles hat geschrieben:Will ich es als "long double" wie in c++ deklarieren, also
long double variable1;
so erhalte ich eine Fehlermeldung.
Für geheime Fehlermeldungen gibt es natürlich auch nur geheime Lösungen...
Mephistopheles hat geschrieben:Dementsprechend vermute ich, dass das Problem bei Qt liegt.

(Hab es natürlich auch mal in abgewandelter Version bei c++ versucht, und da klappts...)
Qt ist eine Bibliothek für C++ somit gibt es da auch keinen Unterschied
Mephistopheles
Beiträge: 3
Registriert: 25. Juli 2011 08:52

Re: long double

Beitrag von Mephistopheles »

Der Fehler lautet:
Fehler:call of overloaded ‘arg(long double&)’ is ambiguous

Meines Erachtens versucht er es sowohl als long als auch als double zu deklarieren, was somit mehrdeutig ist.

Somit zu meiner Frage:
Wie deklariere ich in Qt ein long double, oder geht das gar nicht?
upsala
Beiträge: 3946
Registriert: 5. Februar 2006 20:52
Wohnort: Landshut
Kontaktdaten:

Re: long double

Beitrag von upsala »

Du versuchst also eine der QString::arg(...) - Methoden aufzurufen. Welche soll dein Compiler denn nehmen? Eine mit 'long double' als Parameter gibt es nicht.

Außerdem beantwortet es immer noch nicht die Frage warum du keine größeren Zahlen als 10^9 in einen float oder double unterbringen kannst.
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Re: long double

Beitrag von Christian81 »

Abgesehen davon http://www.cplusplus.com/doc/tutorial/variables/ ('Fundamental data types' - der Hinweis zu long double)
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
Antworten