Rechercher : dans
Par :

[C] #define ou const

Dernière réponse le 7 aoû 2004 à 18:27:32 Onde2Choc, le 7 aoû 2004 à 16:25:55 
 Signaler ce message aux modérateurs

En langage C, quelle est la différence entre

#define nomconstante valeurconstante;
et
const typeconstante nomconstante = valeurconstante;
? La différence se situe-t-elle seulement au niveau de leur syntaxe ?


BOOM !
Onde2Choc, pour ne pas vous servir...

Meilleures réponses pour « [C] #define ou const » dans :
Langage C - Les chaînes de caractères Voir Qu'est-ce qu'une chaîne de caractères ? Une chaîne de caractères (appelée string en anglais) est une suite de caractères, c'est-à-dire un ensemble de symboles faisant partie du jeu de caractères, défini par le code ASCII. En langage C, une chaîne...
Les templates en C++ VoirIntroduction Avantages Inconvénients Quand utiliser des templates ? Que dois-je mettre dans les .hpp et dans les .cpp ? Convention de notations Quelques templates célèbres STL BGL Premiers pas Spécifications de templates Template par...
Les files en langage C VoirLes files - Premier Entré Premier Sorti Requis I. INTRODUCTION II. Définition III. La construction du prototype d'un élément de la file IV. Opérations sur les files A. Initialisation B. Insertion d'un élément dans la file C. Oter un...
[Bash] La variable d'environnement PATH VoirLa variable d'environnement PATH I. Préambule II. C'est quoi le shell ? III. Définition IV. Séance de dissection V. Ajouter un répertoire à la variable PATH VI. Et puis... I. Préambule Sous les systèmes GNU/Linux qu'on le veuille ou...
Langage C - Les variables VoirLe concept de variable Une variable est un objet repéré par son nom, pouvant contenir des données, qui pourront être modifiées lors de l'exécution du programme. Les variables en langage C sont typées, c'est-à-dire que les données contenues dans...
Les classes en langage C++ VoirLa notion d'objet Le langage C est un langage procédural, c'est-à-dire que c'est un langage permettant de définir des données grâce à des variables, et des traitements grâce aux fonctions. L'apport principal du langage C++ par rapport au...
Langage C++ - Les variables VoirLe concept de variable Une variable est un objet repéré par son nom, pouvant contenir des données, qui pourront être modifiées lors de l'exécution du programme. Les variables en langage C++ sont typées, c'est-à-dire que les données contenues dans...

1

Lupin.Arsene, le 7 aoû 2004 à 18:03:57
  • +1

Bonjour,

Extrait de mon bouquin :-)

Les constantes symboliques permettent au programmeur de créer un nom pour une constante et d'utiliser ce nom tout au long du programme. Si la constante doit être modifié au sein du programme, il suffit de la modifier une seule fois dans la directive de précompilation #define; lorsque le programme est recompilé, toutes les occurences de la constante dans le programme sont automatiquement modifiés. Remarque : Tout ce qui se trouve à droite du nom de la constante symbolique remplace la constante symbolique. Ainsi, #define PI = 3.14159 entraîne le remplacement de chaque occurence de PI par = 3.14159. Ceci est la cause de nombreuses et subtiles erreurs de logique et de syntaxe. Le fait de redéfinir une constante symbolique par une nouvelle valeur est également une erreur. Notez qu'en C++ les variables const ont la préférence sur les constantes symboliques. Les variables constantes ont un type de donnée spécifique et sont visibles par leur nom pour un débogueur. Dès qu'une constante symbolique est remplacée par son texte équivalent, seul le texte de remplacement est visible au débogueur. Un inconvénient des variables const est qu'elles peuvent exiger un emplacement mémoire de la taille de leur type de donnée, tandis que les constantes symboliques ne requiert pas de mémoire supplémentaire.

Lupin

Répondre à Lupin.Arsene

2

 Lupin.Arsene, le 7 aoû 2004 à 18:27:32

Re:

Réf:

Deitel et Deitel
C++ Comment Programmer
Troisième Édition
(Introduction à la conception orientée objets avec l'UML[TM])
Éditeur : Les Éditions Reynald Goulet INC.

Lupin

Répondre à Lupin.Arsene