Voila la section C/UNIX. Au menu : du C et de l'UNIX ;-)
Cours de C "avancé"
- TP 1 de C - Outils
- TP 1 de C - Sudoku (suite, pour s'occuper)
- TP 2 de C - Moteur de jeu texte Mastermind
- TP 3 de C - Pointeurs
- TP 4 de C - Calcul vectoriel et matriciel
- TP 5 de C - Hall of Fame (2 séances)
- TP 6 de C - Mastermind en SDL2
- TP 7 de C - Génération de documentation (LC II, le retour)
- TP 8 de C - Aide au développement [compilsepx11.c X11] [compilsepsdl.c SDL] [profilage.c]
- TP 9 de C - Calculatrice
- TP 10 de C - The end
- Makefile simple
- Examens
- Exigences pour l'examen
Versions alternatives de quelques TPs :
- TP 5 de C - Moteur de jeu texte Mastermind
- TP 5 de C - Moteur de jeu texte FloodIt
- TP 6 de C - FloodIt en SDL2 ou en Xlib
Semaines bloquées : UNIX / C
- TP UNIX du lundi : connexion et fichiers, éditeur VI
- TP Unix du mÂrdi : droits et redirections
- TP Unix du mercredi : les processus (ps, kill) et les commandes nohup et crontab
- TP Unix du Jedi : réseau, connexion à distance, web
- TP 1 de découverte du C : syntaxe, variables, affichage et boucles
- TP 2 de découverte du C : saisie et fonctions
- TP 3 de découverte du C : tableaux, devinette et chaînes de caractères
- TP 4 de découverte du C : jeu mystère
- TP 5 de découverte du C : MO MO MOTUS
- Compléments de TP C
- Code de P. Eastmann, IOCCC 2011 (compiler avec l'option -lm)
Environnement de travail
Les TPS doivent être fonctionnels sur la machine turing avec gcc. Les codes sources doivent être commentés et respecter les conventions d'indentation.
Les options de compilation à appliquer sont les suivantes : -Wall -Wextra -Wdeclaration-after-statement -Werror=vla
L'option -g est à spécifier pour utiliser le débogueur et/ou valgrind.
Il est important d'être efficace pour le développement. Les éditeurs installés sur turing sont : nano, xemacs, code, vi...
Si vous voulez travailler chez vous sous Windows, vous pouvez installer Code Blocks en prenant la version qui embarque minGW, le mieux est probablement d'installer le sous-système Linux intégré à Windows 10. Vous pouvez même mettre un serveur graphique X.
Quelques références...
- Règles de développement sécurisé en C - ANSSI
- Guide de style du noyau LINUX
- Dernier brouillon de la norme C18
- Référence C par Richard Stallman [pdf]