• Viernes 8 de Noviembre de 2024, 23:16

Autor Tema:  Que hay de malo en este codigo???  (Leído 1007 veces)

lair

  • Miembro MUY activo
  • ***
  • Mensajes: 213
  • Nacionalidad: mx
    • Ver Perfil
Que hay de malo en este codigo???
« en: Jueves 18 de Junio de 2009, 01:08 »
0
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

Eternal Idol

  • Moderador
  • ******
  • Mensajes: 4696
  • Nacionalidad: ar
    • Ver Perfil
Re: Que hay de malo en este codigo???
« Respuesta #1 en: Jueves 18 de Junio de 2009, 01:24 »
0
 printf( "Fichero: %s -> yum.txtn");

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

Nacional y Popular En mi país la bandera de Eva es inmortal.


Queremos una Argentina socialmente justa, económicamente libre y  políticamente soberana.
¡Perón cumple, Evita dignifica!


La mano invisible del mercado me robo la billetera.