__ ___ _ _ _ ____ / / ___ / _ \__ _ _ _ ___ __| |_ _ | || ||___ \ / / / _ \ / /_)/ _` | | | / __| / _` | | | | | || |_ __) | / /__| __/ / ___/ (_| | |_| \__ \ | (_| | |_| | |__ _/ __/ \____/\___| \/ \__,_|\__, |___/ \__,_|\__,_| |_||_____| |___/
$> ls -l
-rwrw-rw- 1 db0 db0 62.1 Ko 2015-03-30 19:37 Impatient C
-rwrw-rw- 1 db0 db0 3.5 Ko 2015-03-30 19:37 Impatient SCM
-rwrw-rw- 1 db0 db0 3.0 Ko 2015-03-30 19:37 Impatient Emacs
-rwrw-rw- 1 db0 db0 2.4 Ko 2015-03-30 19:37 Impatient Man Pages
-rwrw-rw- 1 db0 db0 10.5 Ko 2015-03-30 19:37 Impatient Perl
-rwrw-rw- 1 db0 db0 17.3 Ko 2015-03-30 19:37 Impatient Python
-rwrw-rw- 1 db0 db0 13.6 Ko 2015-03-30 19:37 Impatient Shell Debutant
-rwrw-rw- 1 db0 db0 16.4 Ko 2015-03-30 19:37 Impatient Shell Script
-rwrw-rw- 1 db0 db0 3.4 Ko 2015-03-30 19:37 Impatient Shell
-rwrw-rw- 1 db0 db0 1.8 Ko 2015-03-30 19:37 Impatient Vim
Warning
Contrairement aux autres articles, ceux de cette listes n'ont jamais été vérifiés ni relus depuis que je les ai rédigés en première année. Ils peuvent donc contenir des erreurs. Les informations qu'ils contiennent sont à prendre avec des pincettes et à vérifier.
Archives
-rwrw-rw- 1 db0 db0 0.9 Ko 2015-03-30 19:37 Financer Ses Etudes-rwrw-rw- 1 db0 db0 2.4 Ko 2015-03-30 19:37 Languages A Apprendre En Tek1
-rwrw-rw- 1 db0 db0 1.1 Ko 2015-03-30 19:37 Makefile Le Retour
-rwrw-rw- 1 db0 db0 3.0 Ko 2015-03-30 19:37 Makefile De Base
-rwrw-rw- 1 db0 db0 1.2 Ko 2015-03-30 19:37 Pourquoi_printf_met_tout_a_la_fin
-rwrw-rw- 1 db0 db0 0.7 Ko 2015-03-30 19:37 Pourquoi_utiliser_getnextline_plutot_que_read_pour_le_minishell_et_autre_42sh
-rwrw-rw- 1 db0 db0 4.3 Ko 2015-03-30 19:37 Taille De Donnees Et Structures
-rwrw-rw- 1 db0 db0 1.5 Ko 2015-03-30 19:37 Cflags
-rwrw-rw- 1 db0 db0 1.6 Ko 2015-03-30 19:37 Hidenp.c
-rwrw-rw- 1 db0 db0 0.1 Ko 2015-03-30 19:37 Liens_utiles_my_select
-rwrw-rw- 1 db0 db0 2.1 Ko 2015-03-30 19:37 List_chainees.c
-rwrw-rw- 1 db0 db0 1.0 Ko 2015-03-30 19:37 Memo_rendu
-rwrw-rw- 1 db0 db0 4.8 Ko 2015-03-30 19:37 Minishell.c
-rwrw-rw- 1 db0 db0 32.7 Ko 2015-03-30 19:37 My_printf.c
-rwrw-rw- 1 db0 db0 4.5 Ko 2015-03-30 19:37 Ordalphlong.c
-rwrw-rw- 1 db0 db0 3.7 Ko 2015-03-30 19:37 Qcm.txt
-rwrw-rw- 1 db0 db0 5.8 Ko 2015-03-30 19:37 Str_to_inttab.c
-rwrw-rw- 1 db0 db0 0.6 Ko 2015-03-30 19:37 Verifier_les_fuites_memoires
-rwrw-rw- 1 db0 db0 0.5 Ko 2015-03-30 19:37 Verifier_les_syscall
/*********************/
Pourquoi printf met tout a la fin ?
Printf ne fonctionne pas comme celui que nous avons coder.
C’etait la tout le but de le recoder :-)
En fait, printf fait un buffer dans lequel il concatene tout ce qu’on
lui demande puis ’relache’ son buffer d’un coup (affiche a l’ecran)
quand il rencontre un ’\n’. C’est pour ca que lorsque l’on fait :
my_putstr("J’ai ");
printf("%d", 12);
my_putstr("ans.\n");
On a a l’ecran :
($)>./a.out
J’ai ans.
12($)>
alors qu’en faisant :
my_putstr("J’ai ");
printf("%d\n", 12);
my_putstr("ans.\n");
On a a l’ecran :
($)>./a.out
J’ai 12
ans.
($)>
C’est pour ca qu’un \n a la fin d’un printf doit etre automatique !
La meilleure solution : utilisez votre printf. En plus, vous serez fiers de dire :
"C’est moi qui l’ai fait !" ;-)
C’est une explication ’en gros’ du pourquoi du comment du printf.
Pour les curieux, plus de details ici : http://zerofansub.net/db0/journal/index.php?page=42/printf
/*********************/