elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Usando Git para manipular el directorio de trabajo, el índice y commits (segunda parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  problemas al trabajar con ficheros [C]
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: problemas al trabajar con ficheros [C]  (Leído 1,880 veces)
SoyelRobert

Desconectado Desconectado

Mensajes: 46



Ver Perfil
problemas al trabajar con ficheros [C]
« en: 19 Enero 2014, 18:09 pm »

Estoy intentando abrir este fichero de esta forma:

Código
  1. #include <stdio.h>
  2.  
  3. int main()
  4. {
  5.  
  6. FILE *fp, *fpp;
  7.  
  8. if(fp = fopen("C:/users/robert/desktop/entrada", "r")==NULL) puts("error archivo entrada.");
  9. if(fpp = fopen("C:/users/robert/desktop/salida", "w")==NULL) puts("error archivo salida.");
  10.  
  11. .
  12. .
  13. .
  14. .
  15. .
  16. .
  17.  
  18.  

el problema es que al ejecutar el programa hace el primer if con el primer puts y segundos despues se cuelga y deja de funcionar, la ruta del archivo es la correcta.

al compilar da los siguientes warnings (codeblocks):

Citar
warning: assignment makes pointer from integer without a cast [enabled by default]

warning: assignment makes pointer from integer without a cast [enabled by default]

alguna idea?


En línea

getting louder!
rir3760


Desconectado Desconectado

Mensajes: 1.639


Ver Perfil
Re: problemas al trabajar con ficheros [C]
« Respuesta #1 en: 19 Enero 2014, 18:24 pm »

Se debe a que faltan paréntesis y por ello las condiciones no se evalúan en el orden correcto. Ademas no debes generar los mensajes de error cuando esa operación la puedes delegar a la función perror:
Código
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3.  
  4. #define NOM_ENTRADA  "C:/users/robert/desktop/entrada"
  5. #define NOM_SALIDA   "C:/users/robert/desktop/salida"
  6.  
  7. int main(void)
  8. {
  9.   FILE *entrada;
  10.   FILE *salida;
  11.  
  12.   if ((entrada = fopen(NOM_ENTRADA, "r")) == NULL){
  13.      perror(NOM_ENTRADA);
  14.      return EXIT_FAILURE;
  15.   }
  16.   if ((salida = fopen(NOM_SALIDA, "w")) == NULL){
  17.      perror(NOM_SALIDA);
  18.      fclose(entrada);
  19.      return EXIT_FAILURE;
  20.   }
  21.  
  22.   /* ... */
  23.  
  24.   return EXIT_SUCCESS;
  25. }

Un saludo


En línea

C retains the basic philosophy that programmers know what they are doing; it only requires that they state their intentions explicitly.
--
Kernighan & Ritchie, The C programming language
SoyelRobert

Desconectado Desconectado

Mensajes: 46



Ver Perfil
Re: problemas al trabajar con ficheros [C]
« Respuesta #2 en: 19 Enero 2014, 19:42 pm »

mm no se que funcion es perror, de hecho, tampoco se me permite trabajr con stdlib.h :(
En línea

getting louder!
leosansan


Desconectado Desconectado

Mensajes: 1.314


Ver Perfil
Re: problemas al trabajar con ficheros [C]
« Respuesta #3 en: 19 Enero 2014, 22:33 pm »

mm no se que funcion es perror............................

He aquí una referencia a la función perror

mm ....................... de hecho,tampoco se me permite trabajar con stdlib.h :(

Pues un copy-paste, cortesía  del maestro rir3760:

Código
  1. #include <stdio.h>
  2.  
  3. #define NOM_ENTRADA  "C:/users/robert/desktop/entrada"
  4. #define NOM_SALIDA   "C:/users/robert/desktop/salida"
  5.  
  6. int main(void)
  7. {
  8.   FILE *entrada;
  9.   FILE *salida;
  10.  
  11.   if ((entrada = fopen(NOM_ENTRADA, "r")) == NULL){
  12.      puts("error archivo entrada.");
  13.      return 1;
  14.   }
  15.   if ((salida = fopen(NOM_SALIDA, "w")) == NULL){
  16.      puts("error archivo salida.");
  17.      fclose(entrada);
  18.      return 2;
  19.   }
  20.  
  21.   /* ... */
  22.  
  23.   return 0;
  24. }
  25.  

¡¡¡¡ Saluditos! ..... !!!!


« Última modificación: 19 Enero 2014, 22:37 pm por leosansan » En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Problemas con ficheros.
Programación Visual Basic
Rhuarc 2 1,707 Último mensaje 29 Julio 2005, 00:39 am
por Slasher-K
Problemas al trabajar con sesiones
PHP
Servia 1 2,476 Último mensaje 5 Diciembre 2011, 17:58 pm
por [u]nsigned
PROBLEMAS CON LA IMPRESIÓN DE FICHEROS
Programación C/C++
adrisc 0 1,365 Último mensaje 19 Diciembre 2012, 16:28 pm
por adrisc
Problemas con los ficheros
Programación C/C++
Karkass 4 1,990 Último mensaje 27 Diciembre 2013, 14:09 pm
por leosansan
Problemas con ficheros en C
Programación C/C++
Karkass 6 2,897 Último mensaje 2 Enero 2014, 10:21 am
por Karkass
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines