Salut
j'aurais une petite question sur les macro, admettons je fait ca :
#define TEXT() printf("Coucou\n" ); \
printf("kikou\n" ); \
printf("plouf\n" ); \
printf("nene\n" );
quand je compilerais ca m'affichera Coucou, kikou,....etc . jusque la pas de problème mais quand je veux modifier kikou par kirikou par exemple quand je recompile il y a encore marqué kikou. pourquoi ca me fait ca ?
Merci de vos réponses
T'es sûr ?
refais l'expérience
j'ai retesté en repartant de zéro mais ca fait toujours le meme chose
dans le doute j'ai essayé et le printf affiche bien la modif, tu compiles comment
Je fait compiler & executer.
ok tu utilises un IDE.. apparement il ne prends pas un compte les modif du fichier et utilises d'ancien fichier .o, tu utilises quel logiciel
j'utilise dev-c++ mais j'ai aussi testé le code sur code::block
je peux pas tester avec ces logiciels, c'est si grave ? au pire il faut supprimer les .o à la main ou voir dans les options de compilations
en faite c'est pas bien grave
c'était juste pas curiosité
Montre tout ton code, parce que ce que tu dis n'est pas possible.
les #defines sont remplacés lors de la pré-compilation (avant la compilation), mais c'est le compilateur qui le fait. Donc, si tu as recompilé et "re-linké", la modification est prise en compte.
voila le code:
#define TEXT() printf("Coucou\n" ); \
printf("kikou\n" ); \
printf("plouf\n" ); \
printf("nene\n" );
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
TEXT();
system("PAUSE" );
return 0;
}
m'affichera:
Coucou
kikou
plouf
nene
et si je quitte la fenetre msdos et que je fait:
voila le code:
#define TEXT() printf("Coucou\n" ); \
printf("kikou\n" ); \
printf("plouf\n" ); \
printf("nene\n" );\
printf("ne s'affiche pas\n" );
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
TEXT();
system("PAUSE" );
return 0;
}
m'affichera:
Coucou
kikou
plouf
nene
au lieu de:
Coucou
kikou
plouf
nene
ne s'affiche pas
as-tu le log de compilation du second cas?
Il y a 1641 utilisateurs connus et inconnus. Pour voir la liste des connectés connus, cliquez ici.
Par SiM07 il y a 1 jour :
Tu peux passer le sujet en résolu en élisant une meilleure réponse dans ce cas ;)
SiM07 - Expert bronze
Spécialité(s) : Programmation, OS, Logiciels
12071 messages depuis le 20/02/2005
