
Voila c'est la fin de ce petit tuto d'initiation au C. Pour d'autres infos, vous pouvez vous reportez à ce site qui regroupe plusieurs tutos de C. Et maintenant place à la pratique. Nous vous avons concocté deux petits exercices.
On considère un long (codé sur 32 bits), on veut le transformer en short (16 bits), en ne conservant qu'un bit sur deux du long d'origine.
Pour compiler le tout, il vous suffit de taper en ligne de commande : make all
Ceci va vous générer un executable nommé transfo_images. Pour l'instant ce programme a pour seul effet d'inverser verticalement l'image. Mais en modifiant le fichier mon_code.c, vous pourrez faire d'autres effets comme noircir une ligne sur 2, rendre blancs les pixels qui n'atteignent pas un certain seuil .... Une solution possible pour le premier exercice : #include <stdio.h> #include <stdlib.h> int main(int argc, char *argv[]) { if(argc!=2) { printf(" Mauvais arguments \n"); return(1); } long k = atol(argv[1]); short l = 0 ; printf("%ld en binaire : \n",k); int i ; for(i=31;i>=0;i--) { printf("%d",(k>>i)&1); } printf("\n"); int n =1 ; for(i=0;i<16;i++) { l = l+(((k>>(2*i))&1)<</stdlib.h></stdio.h>