Langage C/C++ De la syntaxe à la programmation orientée objet T. Grenier T. Red

Langage C/C++ De la syntaxe à la programmation orientée objet T. Grenier T. Redarce, N. Ducros, O. Bernard September 16, 2020 Contributeurs: • T. Redarce, N. Ducros, O. Bernard • Bryan Debout, étudiant Génie Electrique, INSA Lyon, 2015 Copyright © 2013 INSA Lyon PUBLISHED BY INSA LYON Licensed under the Creative Commons Attribution-NonCommercial 3.0 Unported License (the “License”). You may not use this file except in compliance with the License. You may obtain a copy of the License at http://creativecommons.org/licenses/by-nc/3.0. Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an “AS IS” BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. First printing, March 2015 Contents 1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 1.1 Il était une fois... 8 1.2 Utilisations actuelles 9 1.2.1 Popularité et utilisation des langages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 1.2.2 Relation avec les performances des processeurs . . . . . . . . . . . . . . . . . . . . . . . . 9 1.3 Le C et le C++ 13 1.3.1 Histoires compilées . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 1.3.2 Utilisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 I Partie A: How to "Développer" 2 Développement en C/C++ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 2.1 Rappels sur la compilation 17 2.1.1 Pré-processeur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 2.1.2 Compilateur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 2.1.3 Éditeur de liens . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 2.2 Exemple simple 18 3 Environnement de développement . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 3.1 Environnement QtCreator 21 3.2 Installation 22 3.2.1 Téléchargement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 3.2.2 Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 3.3 Création d’un projet 24 3.4 Compilation 25 3.5 Exécution 28 3.6 Intéraction utilisateur lors de l’exécution 28 3.7 Débogage 29 3.8 Paramétrage du compilateur 29 II Partie B: Le langage 4 Introduction à la programmation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 5 Mémento de la syntaxe C++ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 5.1 Syntaxe élémentaire 35 5.1.1 Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 5.1.2 Commentaires . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 5.1.3 Casse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 5.1.4 Symboles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 5.2 Mots clés et mots réservés 36 5.2.1 Mots clés . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 5.2.2 Directives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 5.3 Variables et Types 38 5.3.1 Types fondamentaux en C++ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 5.3.2 Déclaration de variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 5.3.3 Déclaration de variables avec affectation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 5.4 Bases et systèmes de numération 40 5.5 Opérateurs 40 5.5.1 Opérateurs unaire, binaire et ternaire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 5.5.2 Priorité des opérateurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 5.5.3 Associativité des opérateurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 5.6 Opérations binaires et logiques 41 5.6.1 Opérateurs binaires . . . . . . . . . uploads/Philosophie/ note-cpp 1 .pdf

  • 14
  • 0
  • 0
Afficher les détails des licences
Licence et utilisation
Gratuit pour un usage personnel Attribution requise
Partager