Plan du cours
Page de garde
Introduction à la programmation. Langage C
La programmation
Qu'est ce qu'un langage évolué?
Historique du langage C
Caractéristiques du langage C
Types et variables en langage C
Les entrées-sorties en langage C
Précisions sur l'instruction printf
Comment Structurer un programme C
Structure complète d'un programme C
Quelques remarques utiles
Alternatives, itératives
La structure alternative (un choix)
Les expressions booléennes
Imbriquer des alternatives
La structure itérative
Les itératives: variante 1 (do ... while)
Les itératives: variante 2 (for ...)
Cas particulier: les itératives imbriquées
Cas particulier: les conditions de sortie multiples non exclusives
Cas particulier: les conditions de sortie multiples exclusives
Tableaux
Les tableaux à une dimension en C
Les tableaux à deux dimensions en C
La directive
define
Procédures et fonctions
Traduction d'une fonction en C
Traduction d'une procédure en C
Adresse, pointeur et indirection
Adresse, pointeur et indirection en C
Procédure avec paramètres de sortie et d'entrée-sortie en C
Chaînes de caractères
Les chaînes de caractères en C
Les entrées sorties de chaînes
Chaînes et pointeurs
Initialiser une chaîne
Comparaison de chaînes
D'autres fonctions sur les chaînes
Tableaux de chaînes de caractères
Représentation en mémoire des tableaux de chaînes
Tableaux de chaînes de caractères en paramètre
Cas particulier du main
Un point sur les pointeurs, adresses ...
Une adresse?
Un pointeur?
Pointeur de pointeur?
Tableau et pointeur?
Arithmétique sur les pointeurs
Vrai tableau et vrai pointeur
Chaînes de caractères, tableau et pointeur
Paramètres et pointeurs
Paramètres et pointeurs: cas des tableaux
Les structures
Type structuré: motivation
Type structuré: déclaration en C
Type structuré: utilisation
Type structuré: initialisation
Type structuré en passage de paramètre
Type structuré en retour de fonction
Tableaux d'éléments structurés
Structures auto-référentes
Compléments
Les fichiers en C
Les différentes étapes pour utiliser un fichier dans un programme C
L'ouverture d'un fichier: fopen
Les fichiers C en mode texte
Fonction de transfert en lecture
fgets
: fichier texte
Fonction de test de fin de fichier: feof(f)
Fonction de transfert en écriture
fputs
: fichier texte
Fonction d'écriture formatée
fprintf
: fichier texte
Fonction de lecture formatée
fscanf
: fichier texte
Fonction de lecture et d'écriture de caractères: fichier texte
Les fichiers C en mode binaire
Rappels
Fonction d'écriture
fwrite
: fichier binaire
Fonction de lecture
fread
: fichier binaire
Compléments: accès direct
Un point sur les variables et allocation dynamique
Portée et durée de vie
Définition de la portée d'une variable
Définition de la durée de vie
Variables à portée globale
Allocation dynamique
Allocation dynamique: définition et utilité
Utilité: un exemple
malloc
free
Application de l'allocation dynamique: les listes chaînées
suivant