Language C - Les fondamentaux
Développement
Objectifs
Développeurs souhaitant maîtriser les principes de base de la programmation structurée et connaître la syntaxe et les principales fonctions du langage C.
A l’issue de la formation, le stagiaire sera capable de :
- 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
Methodes et outils pédagogiques
- Alternance exposés théoriques et exercices pratiques (80% pratique)
- Support de cours adapté au logiciel étudié et au niveau suivi
- Assistance téléphonique gratuite et illimitée
Modalité d'évaluation
- Evaluation formative au travers de nombreux exercices tout au long de la formation permettant de valider les compétences acquises.
Attestation de stage. - Emargement quotidien d’une feuille de présence
- Possibilité de passage de la certification Tosa en fin de formation
Accessibilité aux personnes handicapées
Pour tout besoin d’adaptation, retrouver le contact de notre référent handicap et les modalités d’accueil sur la page : Infos pratiques/Situation de Handicap
Public concerné
Développeurs / Ingénieurs / Chefs de projets proches du développement
Pré-requis
Expérience de programmation structurée
Introduction au langage C
- Historique - Description du langage
Premiers pas en C
- Présentation du langage C
- Structure générale d'un programme
- La syntaxe de base du langage
- Les types de données et les constantes de base
- Notion de variable, stockage
- Entrées/sorties formatées
- Les commentaires
- Les environnements d'édition, de compilation et d'exécution
- Exécution d'un premier programme
Opérateurs et expressions
- Opérateurs arithmétiques
- Mécanismes d'évaluation des expressions
- Fonctionnement des expressions logiques
- Opérateurs de comparaison : < , >, ==, !=...
- Opérateurs logiques : ET, OU, négation
- Types numériques composés
- Conversions implicites/explicites
- Arithmétique sur les adresses
- Formats d'entrée/sortie associés aux types numériques
- Opérateurs bit à bit
- L'opérateur ternaire
Structures de contrôle
- Programmation structurée
- Contrôle de flux : while, for
- Structures de choix : if, else, else if, switch/case
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, accès à son contenu
- Équivalences pointeurs/tableaux
- Arithmétique des pointeurs
- Chaînes de caractères et manipulation de chaines
Les structures
- Intérêts
- Déclaration, initialisation et accès aux membres
- Imbrication structurée
- Les champs de bits et les unions
- Les énumérations
Les fonctions
- Définition et appel d'une fonction
- Passage de paramètres : par valeur ou par référence
- Code retour d'une fonction
- Les types de retour
- Le point d'entrée "main"
Compilation séparée, modèles de mémoire
- Utilisation de bibliothèque de sources
- Organisation d'un projet avec le fichier Makefile
- Configuration mémoire d'un programme C (pile, tas...)
- Classes d'allocation des variables
- Notion d'objet externe / global / statiques / local
- Visibilité
Le préprocesseur
- Macros prédéfinies (constantes symboliques)
- Macros fonctionnelles
- Les primitives du préprocesseur
- La compilation conditionnelle : #if, #ifdef, #ifndef, #elif, #endif
La bibliothèque standard
- Fonctions de calcul mathématique
- Entrées / sorties et gestion des fichiers
- Manipulation des chaînes de caractères
- Gestion dynamique de la mémoire
Travaux pratiques
- Pour chaque point du programme abordé :
Présentation et démonstration par le formateur, mise en pratique sur les fonctionnalités abordées par le stagiaire avec l’appui du formateur et du groupe, feedbacks du formateur tout au long de l’activité.