Formation en Développement: Langage C - Programmation - Ascent Formation
Retour aux formations
Développement

Langage C - Programmation

5 jour(s)35h

Description

Objectifs de formation : à l’issue de la formation, le stagiaire sera capable d’utiliser la syntaxe et les principales fonctions du langage C pour écrire des programmes C robustes et portables.

Objectifs pédagogiques

  • Acquérir les principes de base de la programmation structurée
  • Apprendre la syntaxe et les principales fonctions du langage C
  • Savoir utiliser les mécanismes de gestion de la mémoire
  • Être capable de concevoir de petites applications respectant la norme ANSI

Public concerné

Développeurs
Ingénieurs
Chefs de projets proches du développement

Prérequis

Avoir des bases en programmation

Déroulé du programme

1

Introduction au langage C

  • Langage C et avantages
  • Les différences entre le C++ et le C
  • Les normes C++11 & C11
  • Les fichiers sources
  • Structure d'un programme
  • La syntaxe du langage
  • Les types de données
  • Les constantes de base
  • Variables globales & locales
  • Stockage & passage de paramètres
  • Entrées/sorties formatées
  • Les commentaires
  • La chaîne de production
  • L'édition, la compilation et l'execution : les différents environnements
  • Travaux pratiques : création d'un premier programme basique en C
2

Opérations et expressions

  • Opérateurs arithmétiques
  • Mécanismes d'évaluation des expressions
  • Post et pré-incrémentation de décrémentation
  • Opérateurs : précédence et associativité
  • Opérateurs d'affectation
  • Mécanismes de fonctionnement des expressions logiques
  • Expressions logiques & instructions While, if
  • Opérateurs de comparaison
  • Opérateurs logiques
  • Les types numériques composés
  • Règle de conversion dans les expressions mixtes
  • Conversions implicites/explicites
  • Initialisation des variables
  • Arithmétique sur les adresses
  • Types numériques : fonction d'entrée/sortie
  • Opérateurs bit à bit & opérateurs de décalage
  • Expression conditionnelle & opérateur ternaire
  • Travaux pratiques : mise en oeuvre des opérateurs et expressions
3

Structures de contrôle

  • Les blocs
  • La structure de boucles
  • Le contrôle de boucles par instruction
  • Structures de choix
  • Structure de choix multiple
  • Travaux pratiques : Mise en place de structure de contrôle dans un programme
4

Tableaux, pointeurs et chaînes de caractères

  • Définition, initialisation et accès aux éléments d'un tableau
  • Définition d'un pointeur & types de pointeurs
  • L'adresse mémoire d'un objet
  • Le contenu d'un pointeur
  • Equivalences pointeurs/tableaux
  • Calculs sur les pointeurs
  • Manipulation de chaînes de caractères
  • Les chaînes de caractères Unicode (C11)
  • Travaux pratiques : Manipulation de tableaux, de pointeurs et des chaînes de caractères
5

Les structures

  • Intérêts des structures
  • Les champs d'une structure : déclaration, initialisation, accès
  • Les structures imbriquées
  • Typedef : création de nouveau types
  • Les champs de bits
  • Les unions
  • Les énumérations
  • Les structures et énumérations anonymes de C11
  • Définition de pointeurs sur structures
  • Travaux pratiques : Utilisation de nouvelles structures de données
6

Les fonctions

  • Définition et déclaration : syntaxe
  • Fonctions et structure du code
  • Appel de fonctions
  • Déclaration de la fonction dans le bloc appelant
  • Passage des paramètres
  • Code de retour
  • Fonction "main"
  • Travaux pratiques : Découpage de code par fonctions, gestion des appels de fonctions
7

Compilation séparée & classe d'allocation

  • Le mécanisme de fonctionnement de la chaîne de production
  • Les bibliothèques de sources
  • Makefile
  • La configuration mémoire du programme
  • Classes d'allocation des variables
  • La compilation séparée et les cas de figure
  • Objet externe
  • Données globales et statiques & données locales
  • Règle de visibilité
  • Compléments sur les fonctions et les initialisations
8

Le préprocesseur

  • Constantes symboliques & macros prédéfinies
  • #define : définition de ses propres macros
  • Définition de macros comme des fonctions
  • Les marqueurs # et ##
  • Annuler la définition de constante : #undef
  • Compilation conditionnelle
  • #include
  • Travaux pratiques : Se servir des directives du préprocesseur, installer la compilation conditionnelle
9

Les bibliothèques standard

  • Fonctions de calcul mathématiques
  • Fonctions d'entrées/sorties
  • Fonctions d'accès aux fichiers
  • Fonctions de manipulation de chaînes de caractères
  • Fonctions de gestion de la mémoire
  • Utilisation de structures chaînées
  • Fonctions sécurisées de la librairie standard C11
  • Travaux pratiques : Implémenter les principales fonctions des bibliothèques standards.

Informations

Durée

5 jour(s)

35h

Tarif

2930 € HT

HT