bonjour tout le monde
quelle est la difference entre
#define nc 3 et const nc=3
johand@horus:~/src/c$ cat defconst.c
#include <stdlib.h>
#include <stdio.h>
#include <math.h>
#define PI 4*atan(1.0)
int main(void)
{
float const deux=2.0;
printf(\"e^(-pi/2)= %f
\" , expf(-PI/2));
printf(\"e^2= %f
\", expf(deux));
return 0;
}
johand@horus:~/src/c$ gcc -E defconst.c |grep -A6 'main(void)'
int main(void)
{
float const deux=2.0;
printf(\"e^(-pi/2)= %f
\" , expf(-4*atan(1.0)/2));
printf(\"e^2= %f
\", expf(deux));
return 0;
}
johand@horus:~/src/c$ gcc -o brol defconst.c -lm johand@horus:~/src/c$ ./brol e^(-pi/2)= 0.207880 e^2= 7.389056
johand@horus:~/src/c$ cat defconst.c
#include <stdlib.h>
#include <stdio.h>
#include <math.h>
#define PI 4*atan(1.0)
int main(void)
{
float const deux=2.0;
printf(\"e^(-pi/2)= %f
\" , expf(-PI/2));
printf(\"e^2= %f
\", expf(deux));
deux = 3.0;
return 0;
}
johand@horus:~/src/c$ gcc -o brol defconst.c -lm
defconst.c: In function 'main':
defconst.c:11: error: assignment of read-only variable 'deux'
Combien cela coûte-t-il au total ? Quelles aides apportent l'état et les acteurs du marché pour alléger cette charge non choisie ? Tous les détails sur Commentçamarche.net.
oui je parle du language de programmtion c
je vous remerci bcp pour votre reponse
mais ce que je veux savoir exactement c'est:
pour #define n 3 (par exemple) ;le preprocesseur remplace le symbole n par la valeur 3 partout dans le programme et que la valeur de la variable n est inchangeable
et si on fait n=n+1(par exemple) on aura des erreurs dans la compilation
donc même si on essaye de changer la valeur de n elle reste inchanger.
si ce que je dit est faux dit le moi!
et ce que je voulais savoir si est ce que c'est le cas aussi pour const n=3
?