Rappel de base
Architecture d'un programme
Types de données
Structures de contrôle
Fonctions et visibilité
Pointeurs et allocation dynamique
Pointeurs
Pointeurs de fonction
Pointeurs de tableau
Indirections à plusieurs niveaux
Fonctions
Récursivité
Nombre de paramètres variables
Passage de paramètres
Passage par valeur
Passage par pointeur
Gestion des fichiers
Fichiers bufferisés
Fichiers non bufferisés
Appels système
Processus
Lecture d'un répertoire
Le réseau (sockets)
Gestion de la mémoire
Classe de stockage
Gestion du tas
Le préprocesseur
Compilation conditionnelle
Constantes pures
Macros
Déclarations spéciales
Variables externes
Fonctions exportées et importées de DLL
Variables statiques
Fonctions inline
10. Constitution et appel de fonctions assembleur
Faut-il encore utiliser l'assembleur ?
Mise en oeuvre
Edition des liens
11. Optimisation
De la vitesse
De la mémoire
12. Débogueurs
Symboles de débogage
Variables suivies
Points d'arrêts
13. Profiler
Objectif du profiling
Mise en oeuvre
Interpréter le résultat
14. Portabilité
Standard ANSI C
Standard POSIX
Unix / Windows
Bibliothèques partagées : SO, DLL
15. Librairies
Librairies standards
Constituer une librairie
Variables externes
Fonctions exportées et importées de DLL
Variables statiques
Fonctions inline