OT: Programacion C - Error o normal ?
Horst von Brand
vonbrand en inf.utfsm.cl
Lun Nov 22 21:25:14 CLST 2004
"Felipe Cristian Barriga Richards (Lista)" <lista en felipebarriga.cl> dijo:
> Hola lista, como vi un OT sobre C, decidi aprovechar el panico y
> consultarles acerca de una duda que tenia hace tiempo. (Todo bajo
> gcc-Linux ;) ).
OK.
> Resulta que hice un programita a modo de ilustrar el error (o lo
> que yo considero error). Es medio complicado mostarlo sin el ejemplo.
>
> - ---- Inicio ejemplo.c ----
>
> #include <stdio.h>
> #include <unistd.h>
>
> int main () {
> ~ int i;
>
> ~ printf ("---- Inicio ----\n");
>
> ~ printf ("-- Prueba con salto de linea --\n");
> ~ for (i=0; i<101; i++) {
> ~ printf ("%d\n", i);
> ~ usleep (10000);
> ~ }
>
> ~ printf ("\n-- Prueba sin salto de linea --\n");
> ~ for (i=0; i<101; i++) {
> ~ printf ("%d ", i);
> ~ usleep (10000);
> ~ }
>
> ~ printf ("\n---- Fin ----\n");
> ~ return (0);
> }
>
> - ---- Fin ejemplo.c ----
>
> Como puede ver al ejecutar este codigo, en el primer 'for', se imprime
> el valor de 'i' en cada ejecucion del ciclo. En el segundo 'for' se
> ejecuta y una vez que termine completamente el 'for' imprime todos los
> valores, como si los guardase en algun buffer.
> ¿ Se puede forzar que se imprima todo lo contenido en ese 'buffer' ?
> (Probe con fprintf (stdout, "%d ", i) y paso exactamente lo mismo.
fflush(3)
--
Dr. Horst H. von Brand User #22616 counter.li.org
Departamento de Informatica Fono: +56 32 654431
Universidad Tecnica Federico Santa Maria +56 32 654239
Casilla 110-V, Valparaiso, Chile Fax: +56 32 797513
Más información sobre la lista de distribución Linux