DÉBUT:
25 novembre 2024
DURÉE:
5 jours
ID:
CIP
CREDIT:
2890€

INFORMATIONS 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