Lieu
Toulouse Voir la mapINFORMATIONS GÉNÉRALES :
OBJECTIFS ET COMPÉTENSES CLÉS DE LA FORMATION
- Compréhension des principes de la programmation C
- Apprendre la programmation orientée Objet avec C
- Être capable de développer en autonomie avec C
PUBLIC CONCERNÉ
- Toutes personnes intéressées par apprendre la programmation orientée Objet avec C et de développer en autonomie.
PRÉ-REQUIS
- Toutes personnes ayant des connaissances C ou d’un langage proche
MODALITÉS D’ÉVALUATION ET VALIDATION
- Contrôle des connaissances acquises
- Attestation de stage
MODALITÉS DE DISPENSE
- Présentiel et distanciel
MODALITÉS DE LA FORMATION
- Apports théoriques, méthodologiques et étude de cas pratiques
- Mises en situation
- Boite à outils
- Moyens : vidéoprojecteur ou écran digital, salle, paperboard
CONTENU : Formation C++ : Initiation et perfectionnement
Introduction Module 1 : Introduction au Langage C
1.Présentation du Langage C
-
- Historique et atouts du langage
- Comparaison avec C++ : Normes C++11 et C11
2. Organisation des Fichiers
-
- Fichiers sources (.c, .h)
- Structure générale d’un programme C
3. Syntaxe de Base et Types de Données
-
- Syntaxe de base du langage
- Types de données et constantes de base
- Variables globales et locales
4. Gestion des Paramètres et Entrées/Sorties
-
- Stockage et passage de paramètres
- Entrées/sorties formatées
5. Commentaires et Chaîne de Production
-
- Utilisation des commentaires
- Utilisation élémentaire de la chaîne de production
6. Environnements de Développement
-
- Édition, compilation et exécution d’un programme
- Exécution d’un premier programme
Module 2 : Opérateurs et Expressions
1. Opérateurs Arithmétiques
-
- Utilisation et évaluation des expressions
- Post et pré-incrémentation et décrémentation
2. Précédence et Associativité des Opérateurs
-
- Règles d’application
3. Opérateurs d’Affectation et Logiques
-
- Mécanismes des expressions logiques
- Opérateurs de comparaison (<, >, ==, !=) et logiques (ET, OU, négation)
4. Conversions et Initialisations
-
- Types numériques composés et conversions (implicites/explicites)
- Initialisation des variables
5. Arithmétique et Opérateurs Bit à Bit
-
- Arithmétique sur les adresses
- Opérateurs bit à bit (ET, OU, OU exclusif, complément à 1, négation)
- Opérateurs de décalage (>>, <<)
6. Expressions Conditionnelles
-
- Utilisation de l’opérateur ternaire
- Travaux Pratiques
Module 3 : Structures de Contrôle
1. Notion de Blocs
2. Structures de Boucles
-
- Boucles while et for
- Instructions de contrôle (break, continue)
3. Structures de Choix
-
- if, else, else if
- Structure de choix multiple : switch
- Travaux Pratiques
Module 4 : Tableaux, Pointeurs et Chaînes de Caractères
1. Tableaux
-
- Définition, initialisation, et accès aux éléments
2. Pointeurs
-
- Définition et manipulation des pointeurs
- Équivalences pointeurs/tableaux
- Calculs sur les pointeurs
3. Chaînes de Caractères
-
- Manipulation et exemples
- Chaînes Unicode en C11
- Travaux Pratiques
Module 5 : Les Structures
1. Définition et Utilisation
-
- Déclarer, initialiser et accéder aux champs d’une structure
- Structures imbriquées et Typedef
2. Champs de Bits et Unions
-
- Définition et utilisation
3. Énumérations et Pointeurs sur Structures
-
- Énumérations (anonymes de C11 incluses)
- Pointeurs sur structures
- Travaux Pratiques
Module 6 : Les Fonctions
1. Définition et Appel
-
- Concepts de base
2. Passage de Paramètres
-
- Par valeur ou par référence
3. Code Retour et Fonction « main »
-
- Types de retour et gestion de la fonction principale
- Travaux Pratiques
Module 7 : Compilation Séparée et Classes d’Allocation
1. Chaîne de Production et Bibliothèques de Sources
-
- Utilisation et création de Makefile
2. Configuration Mémoire
-
- Pile, tas, et classes d’allocation des variables (auto, register, static, extern)
3. Compilation Séparée
-
- Cas des données globales, statiques et locales
- Règles de visibilité
Module 8 : Le Préprocesseur
1. Macros et Compilation Conditionnelle
-
- Macros prédéfinies et personnalisées
- Compilation conditionnelle (#if, #ifdef, #ifndef, #elif, #endif)
2. Inclusion de Ressources
-
- Utilisation de #include
- Travaux Pratiques
Module 9 : Les Bibliothèques Standard
1. Fonctions Mathématiques et d’Entrée/Sortie
-
- Fonctions (sqrt, sin, fprintf, fscanf, etc.)
2. Accès aux Fichiers et Manipulation de Chaînes
-
- Fonctions (fread, fwrite, strlen, strcat, etc.)
3. Gestion de la Mémoire
-
- Fonctions (malloc, free)
4. Structures Chaînées
-
- Mise en place de listes et arbres
5. Fonctions Sécurisées C11
-
- Utilisation (strcat_s, strlen_s, etc.)
- Travaux Pratiques