SoloCodigo

Programación General => C/C++ => Mensaje iniciado por: lair en Jueves 18 de Junio de 2009, 01:08

Título: Que hay de malo en este codigo???
Publicado por: lair en Jueves 18 de Junio de 2009, 01:08
Hola a todos:

tengo el siguiente problema con el manejo de archivo en C

este es el codigo que tengo:
Código: C
  1. #include <stdio.h>
  2.  
  3. int main()
  4. {
  5.    FILE *fichero;
  6.    int i;
  7.  
  8.    fichero = fopen( "../yum.txt", "r" );
  9.    printf( "Fichero: %s -> yum.txtn");
  10.    if( fichero )
  11.       printf( "existe (ABIERTO)n" );
  12.    else
  13.    {
  14.       printf( "Error (NO ABIERTO)n" );
  15.       return 1;
  16.    }
  17.  
  18.         char c;
  19.         do{
  20.                 c=getc(fichero);
  21.                 printf("%c",c);
  22.         }while(c!=EOF);
  23.  
  24.    if( !fclose(fichero) )
  25.       printf( "nFichero cerradon" );
  26.    else
  27.    {
  28.       printf( "nError: fichero NO CERRADOn" );
  29.       return 1;
  30.    }
  31.  
  32.    return 0;
  33. }
  34.  
  35.  

Este es el  contenido del del archivo:
Citar
[Lair@localhost ~]$ cat yum.txt
mié jun 17 17:49:29 CDT 2009
[Lair@localhost ~]$

y esta es la salida que me genera el programa:
Código: Text
  1. [Lair@localhost .scripts]$ ./archivo
  2. Fichero: r -> yum.txt
  3. existe (ABIERTO)
  4. Los 4 primeros caracteres del fichero: yum.txt
  5.  
  6. ?
  7. Fichero cerrado
  8. [Lair@localhost .scripts]$
  9.  

por su tiempo y ayuda muchas gracias
Título: Re: Que hay de malo en este codigo???
Publicado por: Eternal Idol en Jueves 18 de Junio de 2009, 01:24
  printf( "Fichero: %s -> yum.txtn");

No le estas pasando ningun parametro para el %s. Por lo demas me funciona bien ...