Université de M’SILA Département d’électronique Master 1CI 2010/2011 Sommaire 1
Université de M’SILA Département d’électronique Master 1CI 2010/2011 Sommaire 1. SYNTAXE ELEMENTAIRE .................................................................................................................................1 2. TYPES .........................................................................................................................................................2 3. OPERATEURS ...............................................................................................................................................3 4. STRUCTURES CONDITIONNELLES ......................................................................................................................5 5. STRUCTURES DE BOUCLES ..............................................................................................................................5 6. FLUX D'ENTREE CIN ET DE SORTIE COUT ............................................................................................................7 7. PORTES DES VARIABLES .................................................................................................................................8 8. POINTEURS / REFERENCES .............................................................................................................................9 9. TABLEAU .................................................................................................................................................. 11 10. FONCTIONS .............................................................................................................................................. 13 Chapitre I : Programmation classique en C++ Aide mémoire et éléments du langage de programmation C++ 1 1. Syntaxe élémentaire Dans cette section, nous donnons les principales règles d'écriture d'un programme en C++. En effet, pour qu'un compilateur puisse interpréter un code en C++, il est nécessaire de respecter un certain nombre de règles résumées dans les trois paragraphes suivants. 1.1. Instructions Toutes les instructions en C++ se terminent par « ; ». La définition d'un bloc d'instructions (plusieurs instructions) se fait avec des accolades : La durée de vie (création et destruction) ainsi que la portée (possibilité d'utilisation /d'accès ...) de tout ce qui est défini à l'intérieur d'un bloc est limitée à ce bloc (sauf pour les variables static et les variables allouées dynamiquement). 1.2. Commentaires Deux styles de commentaire sont disponibles en C++ : « // » permet de mettre en commentaire tout ce qui est situé après ce caractère et jusqu'au prochain saut de ligne ; « /* » et « */ » permettent de délimiter un bloc de commentaires (plusieurs lignes en général). Voici un exemple d'utilisation de commentaires en C++ : 1 int b; // variable utilisée pour compter des notes 2 nb = 10; /* par défaut on connait 3 le nombre de notes qui est : 4 10... et toutes ces lignes sont en commentaires */ 1.3. Casse et mots réservés Le compilateur prend en compte la casse (majuscule ou minuscule) pour : les noms des fichiers ; les noms des variables et des fonctions ; les mots clés du langage C++ et les directives du préprocesseur. Il est à noter que les mots clés et les directives du préprocesseur ne peuvent pas être utilisés par le programmeur pour nommer les variables, les objets et fonctions. Les tableaux suivant fournissent une liste complète des mots clés et directives du préprocesseur. Liste des 48 mots clés du langage C++ 1 { 2 instruction1; 3 instruction2; 4 …; 5 } 2 Liste des 12 directives du préprocesseur Exemple : 1 // Ces 3 directives sont necessaire a tous fichiers ".h", la 2 // variable "_MaClasse_H_" doit etre differente pour chaque fichier 3 #ifndef _MaClasse_H_ 4 #define _MaClasse_H_ 5 6 #define PI 3.14 // pas de type devant la variable ni de "=" ni de ";" 7 8 // le reste du fichier .h 9 class MaClasse 10 { 11 ... 12 }; 13 14 #endif 2. Types Dans cette section, nous donnons les principales notions à connaître sur les types et la déclaration de variables. 2.1. Types fondamentaux en C++ Le tableau suivant fournit une liste des principaux types utilisés en programmation C++. Types fondamentaux en C++ 3 2.2. Déclaration de variables La syntaxe de déclaration d'une variable en C++ est la suivante : 1 Type variable; 2 Type var1, var2, var3; Les noms de variables doivent commencer par une lettre ou par « _ ». La casse (majuscule ou minuscule) est prise en compte (var1 est différent de Var1). En C++, tous les types sont des classes et toutes les classes sont des types, même les classes créées par l'utilisateur. Exemples : 1 int i,j,k; 2 float Valeur; 2.3. Déclaration de variables avec affectation La déclaration d'une variable avec affectation d'une valeur (ou initialisation) se fait de la façon suivante : 1 type var1 = 0; Qui est équivalent à 2 : 1 type var1; 2 var1 = 0; Voici une liste d'exemples de déclaration de variables avec affectation : 1 float a=3.002; 2 unsigned short b=1,c=2; 3 double un_mille(1.609e3); L'opération d'a_ectation peut se faire entre des variables de même type 1 int a,b; 2 a=4; 3 b=a; // la valeur de a est copiée dans b: b vaut 4 Ou entre des variables de type différent (dans ce cas, attention aux pertes lors de la conversion) : 1 float a=3.1415; 2 char b; 3 double c; 4 b = a; // b vaut 3, un warning est généré à la compilation 5 c = a; // c vaut 3.1415, pas de warning ici car la précision du type double est supérieure à a 6 // précision du type float (pas de perte de précision) 3. Opérateurs Nous abordons dans cette partie les définitions et les différentes propriétés liées aux opérateurs en C++. 3.1. Opérateur unaire, binaire et ternaire Un opérateur unaire est un opérateur ne possédant qu'un seul opérande. Voici un exemple d'un tel opérateur : 1 int a; // déclaration de a 2 &a; // & est un opérateur unaire, il renvoie l'adresse mémoire de a Un opérateur binaire possède deux opérandes (à ne pas confondre avec les opérateurs réalisant des opérations en binaire). Voici un exemple d'un tel opérateur : 1 int a; // déclaration de a 2 a = 1; // = est un opérateur binaire, il affecte la valeur 1 à a Il n'existe qu'un seul opérateur ternaire, l'opérateur de condition « ? : » . Voici un exemple d'utilisation de cet opérateur : 1 q = (p > n ? n : p) // q prend la valeur n si la condition (p > n) et vrai sinon q = p 4 3.2. Priorité Liste et propriétés des opérateurs en C++ 5 4. Structures conditionnelles Les conditions servent à comparer (ou évaluer) des variables ou des valeurs retournées par des fonctions. 4.1. if / else La syntaxe d'une condition if est la suivante (les crochets signalent des blocs non nécessaires) : 1 if ( test ) // test est une variable booléenne (true ou false) 2 { 3 ⁞ // instructions effectuées si test est vrai 4 } 5 [ 6 else // bloc else: n'est pas obligatoire 7 { 8 ⁞ // instructions effectuées si test est faux 9 } 10 ] La variable test est forcément de type booléen (bool). Après l'instruction if, les accolades sont nécessaires si plusieurs instructions sont déclarées. Le bloc else n'est pas obligatoire. Il est à noter que la syntaxe if(a) est équivalent à if( a!=0 ). Exemple : if (x != 0) { cout << 1/x << endl; } else { cout << "Erreur! (Infinity)" << endl; } 4.2. switch / case Quand la variable à tester est de type entier (c'est à dire char, short, int, long et string) la structure if/else peut être remplacée par une structure switch case. La syntaxe d'une condition switch case est la suivante : 1 switch ( variable ) 2 { 3 case constante_1 : 4 [ instructions réalisées si variable == constante_1 ] 5 [ break ; ] 6 case constante_2: 7 [ instructions réalisés si variable == constante_2 ] 8 [ break ; ] 9 ⁞ 10 [ default : instructions réalisées si aucun des cas précédents n'a pas été réalisé] 11 } 5. Structures de boucles Les boucles servent à répéter un ensemble d'instructions. Il existe 3 types de boucle. 5.1. for La syntaxe d'une boucle for en C++ est la suivante : 1 for ( [initialisations] ; [condition] ; [post-instructions] ) 2 { 3 // Instructions de boucle répétées tant que la condition est vraie 4 } L'exécution d'une boucle for se passe en 3 étapes. 1. Le bloc [initialisations], est toujours exécuté une seule fois, 2. Le bloc [condition] est évalué à chaque répétition, 6 3. Si la condition est vraie, les instructions de boucle puis le bloc [post-instructions] sont exécutés puis l'étape 2 est répétée. Si l'expression est fausse, aucune instructions de boucle ni le bloc [post- instructions] ne sont exécutés et la boucle s'arrête. Exemple : for (int i(0) ; i<=10 ; ++i) { cout << i*i << endl; } for (int i(0 ), s(0) ; i<6 ; s+=i, ++i) { cout << i << s << endl; } 5.2. while La syntaxe d'une boucle while est la suivante : 1 while ( [condition] ) 2 { 3 // Instructions de boucle répétées tant que la condition est vraie 4 } Il est à noter que le test du bloc [condition] se fait en début de boucle. Exemple en multi conditions int i=0, Taille=3, j; while ( ( i < Taille ) && ( j != 0 ) ) // Multi conditions { Cout << "Ok" << endl; j = 2 * i - i * ( Taille - i ); i++; } 5.3. do / while Contrairement aux boucles for et while, la boucle do while effectue les instructions de boucle avant d'évaluer l'expression d'arrêt (le bloc condition). 1 do 2 { 3 // Instructions de boucle répétées tant que la condition est vrai 4 } 5 while ( [condition] ) Exemple char choix; do { cout << "Quel est votre choix: (q pour uploads/Litterature/ aide-memoire.pdf
Documents similaires










-
25
-
0
-
0
Licence et utilisation
Gratuit pour un usage personnel Attribution requise- Détails
- Publié le Jul 05, 2021
- Catégorie Literature / Litté...
- Langue French
- Taille du fichier 1.9589MB