Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (WinAPI, Konsole) » Kleines Anfängerproblem

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: [ 1 ] > 2 <
010
14.04.2010, 21:41 Uhr
0xdeadbeef
Gott
(Operator)


Naja, es gibt mehrere Probleme damit. Zunächst mal garantiert der C-Standard lediglich, dass sizeof(double) >= sizeof(float), er legt weder für float nocht für double eine bestimmte Größe fest. Es ist auch zu erwarten, dass in der Zukunft die IEE-754-extended-Varianten vermehrt auftauchen werden.

Und doch, der Endian ist ebenfalls ein Problem. Auf einer SPARC-Maschine kriege ich zum Beispiel als Ausgabe

Code:
zreHhcilliw mokl nemI nimerhbeL  .ne eiSebahad nrG sessosoL zeg nego   !


...was fast schon als Lehrbeispiel für die Endianproblematik durchgehen könnte.
--
Einfachheit ist Voraussetzung für Zuverlässigkeit.
-- Edsger Wybe Dijkstra
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
011
15.04.2010, 08:13 Uhr
Hans
Library Walker
(Operator)



Zitat von 0xdeadbeef:
Naja, es gibt mehrere Probleme damit. Zunächst mal garantiert der C-Standard lediglich, dass sizeof(double) >= sizeof(float), er legt weder für float nocht für double eine bestimmte Größe fest.

demnach also auch nicht, ob die Datentypen nach IEEE umgesetzt werden oder nicht, schätze ich mal.


Zitat:
Es ist auch zu erwarten, dass in der Zukunft die IEE-754-extended-Varianten vermehrt auftauchen werden.

Ach ja, es gibt ja seit fast 2 Jahren einen revidierte Version von IEEE-754, wie einen Wikipedia informiert...


Zitat:
Und doch, der Endian ist ebenfalls ein Problem. Auf einer SPARC-Maschine kriege ich zum Beispiel als Ausgabe

Code:
zreHhcilliw mokl nemI nimerhbeL  .ne eiSebahad nrG sessosoL zeg nego   !


...was fast schon als Lehrbeispiel für die Endianproblematik durchgehen könnte.

Interessant! - Das selbe kriege ich auch raus, wenn ich die innere Schleife auf 0 herunter zählen lasse, anstatt von 0 an aufwärts zu zählen.

Aber als Lehrbeispiel für die Endianproblematik sollte man das doch nicht sehen, schon einfach deshalb, weil es nicht der Zweck dieser Übung ist. (Der besteht "nur" darin, eine "Hää, was ist das denn???"-Reaktion und ratlose Gesichter zu provozieren. Nebenbei ist es ein Beispiel für die Verwendung von unions.)
Um die Endianproblematik zu verdeutlichen, würde ich dann doch auf den klassischen Hexdump zurückgreifen, der "die üblichen Verdächtigen" enthält, also +/-1, 255, 256, 32767/8, 65535/6, und was sich sonst noch so an Byte- und Wortgrenzen findet.

Hans
--
Man muss nicht alles wissen, aber man sollte wissen, wo es steht. Zum Beispiel hier: Nachdenkseiten oder Infoportal Globalisierung.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: [ 1 ] > 2 <     [ C / C++ (WinAPI, Konsole) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: