Je suis confronté à un problème pour comprendre comment fonctionne #define.Comment #define fonctionne dans la programmation lorsque define a une valeur avec l'opérateur?
#include<stdio.h>
#define x 6+3
int main(){
int i;
i=x; //9
printf("%d\n",i);
i=x*x; //27
printf("%d\n",i);
i=x*x*x; //45
printf("%d\n",i);
i=x*x*x*x; //63
printf("%d\n",i);
return 0;
}
Si je #define x 6+3
la sortie est 9 27 45 63
Si je #define x (6+3)
la sortie est 9 81 729 6561
Pour en savoir plus, je vous suggère de faire l'expansion macro main pour comprendre ce qui se passe. – user694733
#define fonctionne par substitution de texte. –
De commentaire ci-dessus, pour vous de commencer 'i = x * X' ->' i = 6 + 3 * 6 + 3' –