Exercices de style en C

1 août 2006 | Développement

Après avoir lu avec grand intérêt, le texte du discours “Does Visual Studio Rot the Mind?” que Charles Petzold avait prononcé au NYC .NET Developer’s Group en octobre 2005, mon expérience a trouvé un écho dans ses mots et j’ai ressenti une certaine communion de pensée avec lui à la lecture de la dernière phrase de son énoncé.

Je cite : “It’s just me and the code, and for awhile, I feel like a real programmer again.”

Cette phrase toute simple, presque un Haïku, m’a fait souvenir de l’époque à laquelle je programmais quotidiennement en C avec comme seuls outils, un simple éditeur de texte et un compilateur en ligne de commande.

Pour illustrer le genre de choses qui peuvent procurer un plaisir intellectuel à certains développeurs, sans aucun rapport avec la productivité, la rentabilité, le code sécurisé ou les bonnes pratiques, voici quelques lignes que j’avais écrites et mises de côté pour le jour où je trouverais l’envie de les faire lire.

Leur fonctionnement n’est pas intuitif et si vous en ressentez le besoin, compilez ces exercices et exécutez-les en mode console.

Pour les utilisateurs de Visual Studio 2003, de simples projets C++ en mode console Win32 feront l’affaire. Le cas échéant, pensez à ajouter “stdio.h” dans la section Propriétés de configuration > C/C++ > Avancé > Fichiers Include forcés.

1er exercice

char*s="char*s=%c%s%c;main(){printf(s,34,s,34);}";main(){printf(s,34,s,34);}

2ème exercice

char*s="char*s=%c%s%c;%cmain()%c{%c%cprintf(s,34,s,34,10,10,10,9,10);%c}";
main()
{
printf(s,34,s,34,10,10,10,9,10);
}

3ème exercice

char*s="char*s=%c%s%c;main(){int i=%d;printf(s,34,s,34,i+1);}";main(){int i=0;printf(s,34,s,34,i+1);}

Poster un commentaire