-
Question sur printf()
Bonjour,
Quand j'utilise printf au milieu d'un code qui fait des affichages via write(), le texte affiche par printf() se place a la fin de l'affichage (je bosse en console, sous unix)
Ce n'est peut etre pas du a write, mais bon je precisais.
Ma question est donc : pourquoi printf() fait ca, et comment specifier a printf qu'il doit s'afficher a l'endroit ou on le place dans le code ?
Merci d'avance !
-
Utilises la fonction fflush pour forcer l'affichage.
Ce que tu as remarqué est dû au fait que l'écriture est "bufferisée".
-
bonjour,
au vu des fonctions que tu utilises, tu fais un programme sur les processus UNIX. Si mes souvenirs sont bons :
lorsque tu crées un processus tu fais une copie du contenu de la mémoire tampon. Cette mémoire est vidée lorsque le processus fils est tué.
Lorsque tu fais un printf(), tu rajoutes un élément à cette mémoire sans pour autant afficher la valeur comme le précise Zooro. Pour afficher cette valeur sans devoir tuer le processus fils, tu dois vider la mémoire grâce à \n.
-
-
Citation:
Envoyé par Toutankharton
Merci ! Ca marche super
http://emmanuel-delahaye.developpez....#fflush_stdout