Précédent   Forum du club des développeurs et IT Pro > Général Développement > Langages de programmation > Débuter
Débuter Forum d'entraide : Comment débuter en programmation ?
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse
 
Outils de la discussion
Publicité
'
Vieux 17/11/2012, 16h10   #1
thmedia
Invité de passage
 
chok thab
Inscription : octobre 2010
Messages : 5
Détails du profil
Informations personnelles :
Nom : chok thab

Informations forums :
Inscription : octobre 2010
Messages : 5
Points : 0
Points : 0
Par défaut Intérêt de la déclaration des constantes

Salut ,
Une constante est un identificateur associé à une valeur fixe.
Pourquoi on ne déclare pas cette constante comme une variable mais elle ne va être modifiée durant le programme ?
thmedia est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/11/2012, 17h07   #2
wiztricks
Expert Confirmé Sénior
 
Inscription : juin 2008
Messages : 3 697
Détails du profil
Informations forums :
Inscription : juin 2008
Messages : 3 697
Points : 4 526
Points : 4 526
Une variable permettra aussi de récupérer la valeur de la "constante".

Mais comment indiquer au compilateur d'interdire une mise à jour de la variable?

Une constante est un label bien utile pour utiliser un nom/symbole.
Le compilateur remplacera le nom par sa valeur.
Le code généré disposera de la valeur immédiate plutôt qu'aller la chercher dans la case ou a été stocké la valeur de la variable.

C'est une optimisation intéressante de l'utilisation et du CPU et de la bande passante mémoire.
- W
__________________
Architectures Post-Modernes
wiztricks est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/11/2012, 18h54   #3
Médinoc
Expert Confirmé Sénior
 
Avatar de Médinoc
 
Homme
Développeur informatique
Inscription : septembre 2005
Messages : 22 386
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 29
Localisation : France

Informations professionnelles :
Activité : Développeur informatique
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : septembre 2005
Messages : 22 386
Points : 32 027
Points : 32 027
Envoyer un message via MSN à Médinoc
Il y a aussi dans certains langages des opérations qui ne sont possibles qu'avec des constantes connues en tant que telles à la compilation. Notamment en C++, la syntaxe switch+case, ou les tableaux "de taille fixe", ou certains usages de la généricité.
__________________
SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

"Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
Apparently everyone.
-- Raymond Chen.
Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.
Médinoc est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/11/2012, 08h47   #4
gangsoleil
Modérateur
 
Avatar de gangsoleil
 
R&D en systemes informatiques bas niveau Unix/Linux
Inscription : mai 2004
Messages : 7 181
Détails du profil
Informations personnelles :
Âge : 32
Localisation : France, Isère (Rhône Alpes)

Informations professionnelles :
Activité : R&D en systemes informatiques bas niveau Unix/Linux

Informations forums :
Inscription : mai 2004
Messages : 7 181
Points : 18 011
Points : 18 011
Citation:
Envoyé par thmedia Voir le message
Salut ,
Une constante est un identificateur associé à une valeur fixe.
Pourquoi on ne déclare pas cette constante comme une variable mais elle ne va être modifiée durant le programme ?
Quel interet de declarer une variable const ? Elle ne doit pas etre modifiee dans le programme, et tenter de le faire est un probleme, qui doit etre detecte au plus tot, par exemple a la compilation.

Pareil pour les constantes : si tu tentes de l'ecrire, tu auras une erreur a la compilation. Si tu en fais une variable, non.
__________________
Modérateur "C", "Informatique Générale & Hardware" et "Unix"
Les règles du forum
gangsoleil est actuellement connecté   Envoyer un message privé Réponse avec citation 00
Réponse
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 12h39.


 
 
 
 
Partenaires

Hébergement Web