Objectifs de la formation

Ce stage intensif vous permettra d’acquérir une connaissance réellement opérationnelle du langage.
Il vous expliquera le fonctionnement des différents mécanismes et vous montrera leur mise en
oeuvre grâce à de nombreux exercices pratiques. A l’issue de ce stage, vous serez en mesure d’écrire
des programmes C robustes et portables.

A qui s’adresse la formation

Les ingénieurs et les informaticiens qui souhaitent acquérir une formation complète et
opérationnelle sur le langage C.

Pré-requis :

Les participants doivent avoir des connaissances générales en informatique et en algorithmique

Travax pratiques :

Des machines sous système Unix ou Windows (PC) seront mises à la disposition des participants de
manière à mettre en pratique les notions présentées.

Contenu de la formation

Première approche pratique
Organisation d’un programme
Composants de base du langage.
Types et constantes de base.
Stockage et passage de paramètres.
Variables globales et locales.
Arguments de fonction : passage par valeur.
Code de retour des fonctions.
Opérateurs d’adressage.
Passage d’arguments par adresse.
Entrées/sorties formatées.
Utilisation élémentaire de la chaîne de production.
Mécanismes
Opérateurs, expressions numériques et opérations sur les nombres
Opérateurs arithmétiques.
Mécanismes d’évaluation des expressions.
Post et pré-incrémentation de décrémentation.
Précédence et associativité des opérateurs.
Opérateurs de base et expressions logiques
Instruction d’affectation.
Instruction while.
Mécanismes de fonctionnement des expressions logiques.
Opérateurs de comparaison.
Gestion du flux d’entrée/sortie standard.
Prototype de filtre. Instruction if.
Opérateurs logiques.
Opérations numériques : rappels et compléments
Les types numériques composés.
Règle de conversion dans les expressions mixtes.
Initialisation des variables.
Arithmétique sur les adresses.
Formats d’entrée/sortie associés aux types numériques.
Tableaux, pointeurs et chaînes de caractères
Définition et utilisation classique des tableaux.
Equivalences pointeurs/tableaux.
Chaînes de caractères.
Initialisation des tableaux.
Exemples de manipulation de chaînes de caractères.
Rappels et compléments sur for, while et l’opérateur « , ».
Compilation séparée, classe d’allocation
Mécanisme de fonctionnement de la chaîne de production.
Utilisation de bibliothèque de sources.
Différents cas de figure de la compilation séparée.
Notion d’objet externe.
Cas des données globales et statiques.
Cas des données locales.
Règle de visibilité.
Cas des fonctions.
Compléments sur les fonctions et les initialisations.
Opérateurs travaillant au niveau du bitET, OU, OU exclusif, complément à 1. Décalages.
Compléments
Compléments sur les opérateurs et les instructions
Opérateur ternaire d’alternative.
L’instruction switch.
L’instruction do while.
Instructions associées aux boucles.
Les structures Généralités.
Les structures emboîtées.
Les structures chaînées.
Les champs de bits.
Les unions.
Les énumérations.
Le macro processeur, la portabilité
Les directives de compilation : constantes symboliques, macros, inclusions, compilation
conditionnelle. Construction de surtypes : typedef.
Conversion explicite de types : casting.
Maîtrise des types complexes
Les entrées/sorties de la bibliothèque Généralités.
Ouverture et fermeture de fichiers.
Entrées et sorties : caractères, lignes, enregistrements.
Outils généraux.
Accès direct.
Gestion des entrées/sorties par les appels système
Généralités.
Opérations classiques.
Accès direct.
Destruction.
Etude de cas.
Outils associés à la chaîne de production