ORSYS formation
NOUS CONTACTER - +33 (0)1 49 07 73 73
NOUS CONTACTER - 📞 +33 (0)1 49 07 73 73    espace pro ESPACE PRO     inscription formation orsys S'INSCRIRE     drapeau francais   drapeau anglais
Nos domaines de formation :
Toutes nos formations Python, C, C++

Formation Programmation en C

4,5 / 5
Stage pratique
Best
Durée : 5 jours
Réf : LGC
Prix  2019 : 2710 € H.T.
Pauses et déjeuners offerts
  • Programme
  • Participants / Prérequis
  • Intra / sur-mesure
  • avis vérifiés
Programme

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 œuvre grâce à de nombreux exercices pratiques. A l'issue de ce stage, vous serez en mesure d'écrire des programmes C robustes et portables.

Objectifs pédagogiques

  • Maîtriser la chaîne de production d'un programme écrit en langage C
  • Mettre en œuvre les opérateurs, les expressions et les structures de contrôle du langage C
  • Manipuler des structures de données, des tableaux, des pointeurs et des chaînes de caractères
  • Organiser le code d'un programme à l'aide de fonctions
  • Exploiter les principales bibliothèques standard du langage C

Travaux 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.
PROGRAMME DE FORMATION

Premiers pas en C

  • Présentation du langage C, ses atouts.
  • Le C++ par rapport au C. Normes C++11 et C11.
  • Les fichiers sources (.c, .h).
  • Structure générale d'un programme.
  • La syntaxe de base du langage.
  • Les types de données et les constantes de base.
  • Variables globales et locales.
  • Stockage et passage de paramètres.
  • Entrées/sorties formatées.
  • Les commentaires.
  • Utilisation élémentaire de la chaîne de production.
  • 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.
  • Post et pré-incrémentation de décrémentation.
  • Précédence et associativité des opérateurs.
  • Opérateurs d'affectation.
  • Mécanismes de fonctionnement des expressions logiques.
  • Expressions logiques dans les instructions while, if...
  • Opérateurs de comparaison : <, >, ==, !=...
  • Opérateurs logiques : ET, OU, négation.
  • 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.
  • Formats d'entrée/sortie associés aux types numériques.
  • Opérateurs bit à bit : ET, OU, OU exclusif, complément à 1, négation. Opérateurs de décalage : >>, <<.
  • Expression conditionnelle avec l'opérateur ternaire.

Travaux pratiques
Mise en œuvre des opérateurs et expressions.

Structures de contrôle

  • Notion de blocs.
  • Les structures de boucles : while, for.
  • Instructions de contrôle de boucles : break, continue.
  • Structures de choix : if, else, else if.
  • Structure de choix multiple : switch.

Travaux pratiques
Mise en œuvre des structures de contrôle.

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. Récupérer l'adresse mémoire d'un objet. Accéder au contenu d'un pointeur.
  • Equivalences pointeurs/tableaux.
  • Calculs sur les pointeurs.
  • Chaînes de caractères.
  • Exemples de manipulation de chaînes de caractères.
  • Les chaînes de caractères Unicode de C11.

Travaux pratiques
Manipulation de tableaux, de pointeurs et des chaînes de caractères.

Les structures

  • Intérêts des structures.
  • Déclarer, initialiser et accéder aux champs d'une structure.
  • Utiliser des structures imbriquées.
  • Créer de nouveaux types en utilisant Typedef.
  • Les champs de bits.
  • Les unions.
  • Les énumérations.
  • Les structures et énumérations anonymes de C11.
  • Définir des pointeurs sur structures.

Travaux pratiques
Implémentation de nouvelles structures de données.

Les fonctions

  • Définition d'une fonction.
  • Appel d'une fonction.
  • Passage de paramètres : par valeur ou par référence.
  • Code retour d'une fonction. Les types de retour.
  • La fonction "main".

Travaux pratiques
Découper son code à l'aide de fonctions. Gérer les appels de fonctions.

Compilation séparée, classe d'allocation

  • Mécanisme de fonctionnement de la chaîne de production.
  • Utilisation de bibliothèque de sources.
  • Notion de Makefile.
  • Configuration mémoire d'un programme C (pile, tas...).
  • Classes d'allocation des variables (auto, register, static, extern).
  • 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é.
  • Compléments sur les fonctions et les initialisations.

Le préprocesseur

  • Utilisation des macros prédéfinies (constantes symboliques). Définir ses propres macros avec #define.
  • Définir des macros comme des fonctions. Utilisation des marqueurs # et ##.
  • Annuler la définition de constante avec #undef.
  • La compilation conditionnelle : #if, #ifdef, #ifndef, #elif, #endif.
  • Inclure des ressources avec #include.

Travaux pratiques
Utilisation des directives du préprocesseur. Mise en place de la compilation conditionnelle.

Les bibliothèques standard

  • Les fonctions de calcul mathématique (sqrt, sin...).
  • Les fonctions d'entrées/sorties (fprintf, fscanf...).
  • Les fonctions d'accès aux fichiers (fread, fwrite...).
  • Les fonctions de manipulation de chaînes de caractères (strlen, strcat...).
  • Les fonctions de gestion de la mémoire (malloc, free...).
  • Mise en place de structures chaînées (listes chaînées, arbres n-aire...).
  • Les fonctions "sécurisées" de la librairie standard C11 (strcat_s, strlen_s, ...).

Travaux pratiques
Utilisation des principales fonctions des bibliothèques standard.

Participants / Prérequis

» Participants

Développeurs, ingénieurs, chefs de projets proches du développement.

» Prérequis

Connaissances de base en programmation.
Intra / sur-mesure

Demande de devis intra-entreprise
(réponse sous 48h)

Vos coordonnées

En cochant cette case, j’atteste avoir lu et accepté les conditions liées à l’usage de mes données dans le cadre de la réglementation sur la protection des données à caractère personnel (RGPD).
Vous pouvez à tout moment modifier l’usage de vos données et exercer vos droits en envoyant un email à l’adresse rgpd@orsys.fr
En cochant cette case, j’accepte de recevoir les communications à vocation commerciale et promotionnelle de la part d’ORSYS Formation*
Vous pouvez à tout moment vous désinscrire en utilisant le lien de désabonnement inclus dans nos communications.
* Les participants inscrits à nos sessions de formation sont également susceptibles de recevoir nos communications avec la possibilité de se désabonner à tout moment.
Avis vérifiés
picto avis vérifiés
SAIGNOT 17/06/2019
4 / 5
Grande qualité pédagogique. Exemples précis, écoute active et informations pertinentes. Aide en cas de difficultés lors des exercices.

Célia A. 17/06/2019
5 / 5
Mr Gaultier est un très bon formateur qui a su nous accorder du temps en fonction de nos besoins. Il est très pédagogue et est à l'écoute. Il sait nos points faibles et fait tout pour les améliorer. C'est un formateur très compétent, qui nous met à l'aise et qui sait répondre à nos attentes. Je suis très satisfaite de ce stage car, j'ai énormément progresser en très peu de

Damien B. 17/06/2019
5 / 5
Formateur très compétent et à l'écoute.

MAEL R. 17/06/2019
5 / 5
Très bonne pédagogie du formateur, disponible et à l'écoute, bon équilibre cours et pratique.

David M. 17/06/2019
4 / 5
Contenu un peu trop dense sur une semaine.

Romain C. 17/06/2019
5 / 5
Peut-être que l'allocation dynamique pourrait être vue autrement que dans le contexte de l'utilisation des structures chaînées. Globalement la dernière journée me paraît très dense.

Fabrice S. 15/04/2019
4 / 5
Contenu très dense, cette formation est intense. Le temps total de cinq jours me parait un peu optimiste. Le support de cours est bon et l'animateur a une bonne pédagogie.

Frédéric N. 15/04/2019
5 / 5
Le contenu était très riche mais manquait d'exercice pour une mise en oeuvre progressive.

Jason Z. 15/04/2019
5 / 5
Peut-être ponctuer les exemples d'exercice avec plus d'indication ( surligner avec un fond marqueur, des flèches pour représenter sur qu'elle partie du code une fonction interagis, etc...)

Franco, G. 15/04/2019
5 / 5
Jean Marc et un formateur compétant et très abordable. Malgré mon manque d'expertise dans le domaine du développement informatique, il m'a beaucoup aidé a avancer et je suis satisfait. Cette formation et ma troisième en langages de programmation (j'ai fait Java, Python et C) et j'ai maintenant une bonne base que m'aidera dans mon travaille au temps que rédacteur technique. Merci!!

Maxence C. 15/04/2019
5 / 5
Formateur à l'écoute, pédagogue et agréable

Juste G. 15/04/2019
5 / 5
Le contenu de la formation a été globalement bien structuré et permet de comprendre les bases de programmation du langage C. Grâce à une pédagogie "agile", et souple en fonction des profil de chaque apprenant la formation s'est bien déroulé.

Alexandre B. 09/04/2019
5 / 5
Stage complet et contenu intéressant. J'aurai aimé faire d'avantage d'exercice..

Arnaud D. 17/12/2018
4 / 5
La première moitié du stage était très bien, s'adressait à des personnes ayant fait peu ou pas de programmation. Le seconde moitié en revanche est allée beaucoup trop vite pour pouvoir en retenir quelque chose. Si tout le programme prévu a bien été balayé, ce fut au détriment de la compréhension de quelques éléments.

Fabrice G. 17/12/2018
4 / 5
Je repars en ayant appris des choses très utiles.

Eric D. 17/12/2018
5 / 5
Complet, toujours accompagné d'exercices

Sébastien D. 17/12/2018
5 / 5
La qualité pédagogique est parfaite. Jean-Marc a pris le temps qu'il fallait pour répondre à nos questions. Il a également été très clair dans ses explications.

Ludwig H. 10/12/2018
5 / 5
Un peu rapide sur certain point mais j'ai les outils pédagogiques pour revenir dessus chez moi.

Robert D. 26/11/2018
5 / 5
contenu et pédagogie très adaptes. N'ayant aucune base et aucune connaissance, j'ai beaucoup appris et bénéficier de ce langage, mais ce serai a moi de pratiquer

Patrick S. 26/11/2018
5 / 5
Très bonne qualité de l'intervenant nous a pas fait progresser
Avis client 4,5 / 5

Les avis client sont issus des feuilles d’évaluation de fin de formation. La note est calculée à partir de l’ensemble des avis datant de moins de 12 mois.

Pour vous inscrire

Cliquez sur la ville, puis sur la date de votre choix.
[+]
PARIS
[+]
AIX
[+]
BORDEAUX
[+]
BRUXELLES
[+]
GRENOBLE
[+]
LILLE
[+]
LYON
[+]
MONTPELLIER
[+]
NANTES
[+]
ORLEANS
[+]
RENNES
[+]
SOPHIA-ANTIPOLIS
[+]
STRASBOURG
[+]
TOULOUSE

Horaires

Les cours ont lieu de 9h à 12h30 et de 14h à 17h30.
Les participants sont accueillis à partir de 8h45.
Pour les stages pratiques de 4 ou 5 jours, les sessions se terminent à 15h30 le dernier jour.
En poursuivant votre navigation, vous acceptez l’utilisation de cookies nous permettant de vous proposer des offres correspondant à vos centres d’intérêt.
En savoir plus sur l’usage des cookies…   ✖ Fermer
linkedin orsys
twitter orsys
it! orsys
instagram orsys
pinterest orsys
facebook orsys
youtube orsys