C'en action rassemble une sélection de solutions efficaces aux problèmes le plus souvent rencontrés par les programmeurs en C. À la fois source d'idées, moyen d'apprendre C par l'exemple ou de programmer plus vite et plus facilement, cet ouvrage est construit sur le modèle : un problème, une solution, une discussion.
Les recettes couvrent un éventail de tâches simples ou complexes et la plupart des chapitres proposent le code source. Citons quelques-unes de ces 167 recettes
• Compilation : automatiser avec inake, obtenir des binaires optimisés • Bibliothèques et fonctions : créer des bilbliothèques, écrire un greffon • Débogage : avec printf(), afficher le contenu d'une variable
• L'art de programmer en C : écrire du code réutilisable, utiliser les macros • Gestion des erreurs : créer une fonction de journalisation, utiliser syslog, • Structures de données : les choisir de manière pertinente, trier une liste • Dates et heures : récupérer la date et l'heure courante, convertir des estampilles en struct tm ou en chaîne • Chaînes de caractères : les copier, les analyser, les découper • Gestion (le la mémoire: allouer de la mémoire, en tracer des allocations
• Répertoires et fichiers : les modifier, déplacer, créer, renommer, écrire un fichier de configuration, y ajouter des données • Réseau etprotocoles réseait : créer un serveur et un client TCP/IP, UDP/Il', faire suivre un port, POP3 et IMAI', effectuer des requêtes SQL sur des serveurs MySQL, PostgreSQL, compatibles OI)BC
• Signaux: savoir si un signal a été bloqué, envoyer un signal • Exécution parallèle : créer un nouveau processus, éviter les processus zombies • Système et processus : lancer un script Perl, créer un démon
• Internationalisation : internationaliser un programme avec gettext • Compression : lire, écrire un fichier compressé, décompresser un fichier
• XML avec libxml2 : lire un document XML, supprimer un nceud d'un arbre DOM, parcourir un document XML avec SAX • Automatiser la compilation avec autoconf et automake : utiliser autoconf, automake et libtool pour créer une bibliothèque Les solutions présentées sont aisées à mettre en œuvre et seront utiles aux débutants comme aux pros.