[SOS] Warning.
David Decotigny
david.decotigny at free.fr
Mer 22 Déc 15:41:08 CET 2004
LfvrChris at aol.com wrote:
> Comment se fait-il que lorsque je place le caractère "\" dans les
> macros, le code ne va pas à la ligne comme il le devrait ?
??
Ca permet d'ecrire :
#define macro \
int \
i = \
2
Donc ca /permet/ au programmeur de passer a la ligne quand il ecrit son
code. Par contre, quand cpp (le préprocesseur C) passe dessus, il
transforme le code suivant :
Bonjour;
macro;
Salut;
En :
Bonjour;
int i = 2;
Salut;
C'est-a-dire que le preprocesseur remet tout sur une seule ligne.
> éditant son contenu. J'utilise gcc de djgpp et nasm car tellement
> habitué à la syntaxe classique et non pas à la syntaxe AT&T.
Tu peux lire l'assembleur au format intel meme avec gcc normal sous
Linux. Il suffit de compiler normalement ton source (genre gcc -c
toto.c) et d'utiliser objdump pour desassembler, mais avec l'option -M
intel : "objdump -S -M intel toto.o" . Tu peux faire ca avec tout
sos.elf si tu veux (seulement 13170 lignes de code assembleur sur ma
version). Mais il faut des binutils recents (ici : 2.15).
--
David Decotigny -- http://david.decotigny.free.fr
Plus d'informations sur la liste de diffusion Sos