Moin,

On Donnerstag, 6. Dezember 2007, Christian Stimming wrote:
[...]
> Hm, die AB_Values werden doch letztlich entweder über mpq_set_d (bei
> FromDouble) oder mpq_set_f (bei fromString) erzeugt. (@Martin: Welches von
> beiden war's wohl hier?) Laut
[...]
Hmm, ja, ich werde das mal aendern. Ich benutze in einem anderen Projekt 
naemlich auch gmp, und da parse ich die Zahlen selbst: Ich lese alles bis zum 
Komma ein, wenn das Komma kommt fange ich an die Nachkommastellen 
mitzuzaehlen, lese aber trotzdem weiter in den Numerator. Anschliessend 
erzeuge ich einen Denominator aus 10*Anzahl der Nachkommastellen.

Dann kann ich das ueber mpq_set_si() ganz normal setzen und habe immer nur mit 
handelbaren integers zu tun.

[...]
> Auf 64bit-Linux mit gcc hat sich "long int" sozusagen ohne Vorwarnung in 64
> bit verwandelt; bei anderen Compilern kann das auch so sein, muss aber
[...]

Ich weiss, deswegen verwende ich ja auch in meinen eigenen Projekten dort, wo 
die Breite wichtig ist, explizit uint32_t et al.

Das Problem schlaegt beispielsweise auch bei pcsclite zu Buche, weil man dort 
Windows-Typen wie DWORD etc mit unsigned long und so weiter uebersetzt hat, 
was aber auf unterschiedlichen Architekturen unterschiedlich interpretiert 
wird. Damit koennen da beispielsweise prinzipiell 64-Bit Clients nicht mit 
32-Bit Servern arbeiten...


Gruss
Martin


-- 
"Things are only impossible until they're not"

Martin Preuss - http://www.aquamaniac.de/
AqBanking - http://www.aqbanking.de/
LibChipcard - http://www.libchipcard.de/

-------------------------------------------------------------------------
SF.Net email is sponsored by: The Future of Linux Business White Paper
from Novell.  From the desktop to the data center, Linux is going
mainstream.  Let it simplify your IT future.
http://altfarm.mediaplex.com/ad/ck/8857-50307-18918-4
_______________________________________________
Aqbanking-devel mailing list
Aqbanking-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/aqbanking-devel

Reply via email to