You are previewing Le langage C: Édition mise à jour avec la norme C11.
O'Reilly logo
Le langage C: Édition mise à jour avec la norme C11

Book Description

Apprenez à programmer dans l'un des langages les plus populaires au monde !

Grâce à des exercices pratiques et des cas concrets, cet ouvrage vous initie progressivement à toutes les bases du langage (fonctions, structures, pointeurs, gestion de mémoire, gestion fichiers, bibliothèques de classes, etc.), vous apprend à utiliser les bonnes syntaxes et vous fournit de nombreux conseils, notamment en matière de sécurité.

À l'issue de cet ouvrage, vous serez apte à réaliser de petits programmes et à comprendre le code de programmes plus complexes. À l'aide de bibliothèques de fonctions existantes, vous pourrez également créer vos interfaces graphiques, communiquer avec d'autres programmes sur Internet, réaliser des jeux ou traiter des données issues des bases de données.

Cette nouvelle édition a été entièrement revue et complétée pour intégrer les nouveautés introduites par la norme C11. Les explications et les exemples de code ont été actualisés, en faveur d'une syntaxe plus claire et concise.

Table of Contents

  1. Coverpage
  2. Titlepage
  3. Copyright
  4. Sommaire
  5. Table des matières
  6. Préface à l’édition française 2012
    1. Ce que cette nouvelle édition apporte
    2. La programmation en C aujourd’hui
    3. La programmation système et réseau
    4. Le CD laisse la place à Internet
    5. Remerciements
  7. Introduction
    1. Caractéristiques de ce livre
    2. Où trouver le code présenté dans ce livre
    3. Conventions
  8. Tour d’horizon de la Partie I
    1. Ce que vous allez apprendre
    2. Chapitre 1. Comment démarrer
      1. Bref historique du langage C
      2. Pourquoi utiliser le langage C ?
      3. Avant de programmer
      4. Cycle de développement du programme
      5. Votre premier programme C
      6. Résumé
      7. Q & R
      8. Atelier
      9. Exemple pratique 1. Lecture au clavier et affichage à l’écran
    3. Chapitre 2. Structure d’un programme C
      1. Exemple de programme
      2. Structure du programme
      3. Étude de la structure d’un programme
      4. Résumé
      5. Q & R
      6. Atelier
    4. Chapitre 3. Constantes et variables numériques
      1. La mémoire
      2. Les variables
      3. Les types de variables numériques
      4. Les constantes
      5. Résumé
      6. Q & R
      7. Atelier
    5. Chapitre 4. Instructions, expressions et opérateurs
      1. Les instructions
      2. Les expressions
      3. Les opérateurs
      4. L’instruction if
      5. Évaluation des expressions de comparaison
      6. Les opérateurs logiques
      7. Les valeurs VRAI/FAUX
      8. Réorganisation de la hiérarchie des opérateurs
      9. Résumé
      10. Q & R
      11. Atelier
      12. Exemple pratique 2. Le nombre mystère
    6. Chapitre 5. Les fonctions
      1. Qu’est-ce qu’une fonction ?
      2. Fonctionnement
      3. Les fonctions et la programmation structurée
      4. Écriture d’une fonction
      5. Passage d’arguments à une fonction
      6. Appel d’une fonction
      7. Le placement des fonctions
      8. Résumé
      9. Q & R
      10. Atelier
    7. Chapitre 6. Les instructions de contrôle
      1. Les tableaux
      2. Contrôle de l’exécution du programme
      3. Les boucles imbriquées
      4. Résumé
      5. Q & R
      6. Atelier
    8. Chapitre 7. Les principes de base des entrées/sorties
      1. Afficher des informations à l’écran
      2. Lecture de données numériques avec scanf()
      3. Résumé
      4. Q & R
      5. Atelier
      6. Révision de la Partie I
  9. Tour d’horizon de la Partie II
    1. Ce que vous allez apprendre
    2. Chapitre 8. Utilisation des tableaux numériques
      1. Définition
      2. Le nom et la déclaration des tableaux
      3. Résumé
      4. Q & R
      5. Atelier
    3. Chapitre 9. Les pointeurs
      1. Définition
      2. Pointeurs et variables simples
      3. Pointeurs et types de variables
      4. Pointeurs et tableaux
      5. Précautions d’emploi
      6. Pointeurs et index de tableaux
      7. Passer des tableaux à une fonction
      8. Résumé
      9. Q & R
      10. Atelier
      11. Exemple pratique 3. Une pause
    4. Chapitre 10. Caractères et chaînes
      1. Le type de donnée char
      2. Les variables caractère
      3. Les chaînes
      4. Chaînes et pointeurs
      5. Les chaînes sans tableaux
      6. Affichage de chaînes et de caractères
      7. Lecture des chaînes de caractères
      8. Résumé
      9. Q & R
      10. Atelier
    5. Chapitre 11. Les structures
      1. Les structures simples
      2. Les structures plus complexes
      3. Tableaux de structures
      4. Initialisation des structures
      5. Structures et pointeurs
      6. Les unions
      7. Structures et typedef
      8. Résumé
      9. Q & R
      10. Atelier
    6. Chapitre 12. La portée des variables
      1. Définition de la portée
      2. Les variables externes
      3. Les variables locales
      4. Les variables locales et la fonction main()
      5. Choix de la classe de stockage
      6. Variables locales et blocs
      7. Résumé
      8. Q & R
      9. Atelier
      10. Exemple pratique 4. Les messages secrets
    7. Chapitre 13. Les instructions de contrôle (suite)
      1. Fin de boucle prématurée
      2. L’instruction goto
      3. Les boucles infinies
      4. L’instruction switch
      5. Sortir du programme
      6. Introduction de commandes système dans un programme
      7. Résumé
      8. Q & R
      9. Atelier
    8. Chapitre 14. Travailler avec l’écran et le clavier
      1. Les flots du C
      2. Les fonctions d’entrées/sorties
      3. Les entrées au clavier
      4. Les sorties écran
      5. Redirection des entrées/sorties
      6. Quand utiliser fprintf()
      7. Résumé
      8. Q & R
      9. Atelier
  10. Tour d’horizon de la Partie III
    1. Qu’allez-vous voir maintenant ?
    2. Chapitre 15. Retour sur les pointeurs
      1. Pointeur vers un pointeur
      2. Pointeurs et tableaux à plusieurs dimensions
      3. Tableaux de pointeurs
      4. Pointeurs vers des fonctions
      5. Les listes chaînées
      6. Résumé
      7. Q & R
      8. Atelier
    3. Chapitre 16. Utilisation de fichiers sur disque
      1. Flots et fichiers sur disque
      2. Types de fichiers sur disque
      3. Noms de fichiers
      4. Ouverture d’un fichier
      5. Écriture et lecture d’un fichier de données
      6. Entrées-sorties tamponnées
      7. Accès séquentiel opposé à accès direct
      8. Détection de la fin d ’un fichier
      9. Fonctions de gestion de fichier
      10. Emploi de fichiers temporaires
      11. Résumé
      12. Q & R
      13. Atelier
      14. Exemple pratique 5. Comptage des caractères
    4. Chapitre 17. Manipulation de chaînes de caractères
      1. Longueur d’une chaîne
      2. Copie de chaînes de caractères
      3. Concaténation de chaînes de caractères
      4. Comparaison de deux chaînes de caractères
      5. Recherche dans une chaîne de caractères
      6. Conversions de chaînes
      7. Fonctions de conversion d’une chaîne de caractères en nombre
      8. Fonctions de test de caractères
      9. Résumé
      10. Q & R
      11. Atelier
    5. Chapitre 18. Retour sur les fonctions
      1. Passage de pointeurs à une fonction
      2. Les pointeurs de type void
      3. Fonctions avec un nombre variable d’arguments
      4. Fonctions renvoyant un pointeur
      5. Résumé
      6. Q & R
      7. Atelier
    6. Chapitre 19. Exploration de la bibliothèque des fonctions
      1. Les fonctions mathématiques
      2. Prenons le temps.
      3. Fonctions de traitement d’erreur
      4. Le fichier d’en-tête errno.h
      5. Recherche et tri
      6. Résumé
      7. Q & R
      8. Atelier
      9. Exemple pratique 6. Calcul des versements d’un prêt
    7. Chapitre 20. La mémoire
      1. Conversions de types
      2. Allocation d’espace mémoire
      3. Manipulation de blocs de mémoire
      4. Opérations sur les bits
      5. Résumé
      6. Q & R
      7. Atelier
    8. Chapitre 21. Utilisation avancée du compilateur
      1. Utilisation de plusieurs fichiers sources
      2. Le préprocesseur C
      3. Macros prédéfinies
      4. Les arguments de la ligne de commande
      5. Résumé
      6. Q & R
      7. Atelier
      8. Révision de la Partie III
  11. Annexes
    1. A. Charte des caractères ASCII
    2. B. Mots réservés
    3. C. Travailler avec les nombres binaires et hexadécimaux
      1. Le système des nombres décimaux
      2. Le système binaire
      3. Le système hexadécimal
    4. D. C11
      1. Contexte
      2. La norme C
      3. Les nouveautés de la norme C11
    5. E. Portabilité du langage
      1. Garantir la compatibilité ANSI
      2. Renoncer au standard ANSI
      3. Les variables numériques portables
      4. Unions et structures portables
      5. Résumé
      6. Q & R
      7. Atelier
    6. F. Fonctions C courantes
    7. G. Bibliothèques de fonctions
      1. Les bibliothèques de fonctions
      2. Structures de données
      3. Interfaces utilisateur
      4. Jeux et multimédia
      5. Programmation réseau
      6. Bases de données et annuaires
    8. H. Les logiciels libres
      1. Licence et copyright
      2. Qu’est-ce qu’un logiciel libre ?
      3. Différences entre les diverses licences
      4. Diffuser un logiciel libre
      5. Traduction française de la licence GPL version 3
    9. I. Réponses
  12. Index