Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
-
king-crash
- Beiträge: 742
- Registriert: 08.08.2006 12:07:56
- Lizenz eigener Beiträge: MIT Lizenz
Beitrag
von king-crash » 26.01.2008 12:19:33
Hallo,
Wie finde ich mit #ifdef heraus welches Format der Compiler verwendet?
Gruß
Zuletzt geändert von
king-crash am 28.01.2008 15:19:43, insgesamt 1-mal geändert.
-
rksteve
- Beiträge: 716
- Registriert: 11.09.2003 12:24:53
-
Kontaktdaten:
Beitrag
von rksteve » 26.01.2008 14:00:38
ich würde mal sagen dass das Format hardwareabhängig ist und nicht vom Compiler.
Ich? Nein, ich bin keine Signatur, ich mach hier nur sauber...
-
cosmac
- Beiträge: 4576
- Registriert: 28.03.2005 22:24:30
Beitrag
von cosmac » 26.01.2008 14:09:58
hi,
aber der Compiler sollte eigentlich wissen, für welche Hardware
er Code erzeugen soll
schau die mal /usr/include/endian.h an; so könnte es gehen:
Code: Alles auswählen
#include <endian.h>
#if __BYTE_ORDER == __BIG_ENDIAN
/* BIG! */
#endif
Beware of programmers who carry screwdrivers.
-
rksteve
- Beiträge: 716
- Registriert: 11.09.2003 12:24:53
-
Kontaktdaten:
Beitrag
von rksteve » 26.01.2008 15:01:22
cosmac hat geschrieben:hi,
aber der Compiler sollte eigentlich wissen, für welche Hardware
er Code erzeugen soll
Ja, da ist natürlich auch was wares drann
Ich? Nein, ich bin keine Signatur, ich mach hier nur sauber...
-
gms
- Beiträge: 7798
- Registriert: 26.11.2004 20:08:38
- Lizenz eigener Beiträge: MIT Lizenz
Beitrag
von gms » 26.01.2008 15:55:08
diese "predefined Macros" sind halt leider nicht sehr kompatibel.
wenn du autoconf verwendest, könntest du das "AC_C_BIGENDIAN" Macro verwenden, für cmake gibt es auch ein Testmacro
Gruß
gms
-
GoKi
- Beiträge: 2068
- Registriert: 04.07.2003 23:08:56
- Lizenz eigener Beiträge: MIT Lizenz
Beitrag
von GoKi » 27.01.2008 11:46:46
Alternativ kann man selbst eine kleine Funktion schreiben, mit der man es zur Laufzeit abfragen kann.
MfG GoKi
:wq
-
king-crash
- Beiträge: 742
- Registriert: 08.08.2006 12:07:56
- Lizenz eigener Beiträge: MIT Lizenz
Beitrag
von king-crash » 28.01.2008 15:19:13
Thx, genau das wollt ich wissen.