comment
IRC Chat
play_arrow
Este sitio utiliza cookies propias y de terceros. Si continúa navegando consideramos que acepta el uso de cookies. OK Más Información.

Duda C

  • 8 Respuestas
  • 2799 Vistas

0 Usuarios y 1 Visitante están viendo este tema.

Conectado D4RKS0N1K

  • *
  • Underc0der
  • Mensajes: 119
  • Actividad:
    0%
  • Reputación 0
    • Ver Perfil
« en: Enero 24, 2016, 07:27:06 pm »
Buenas, estaba haciendo un ejercicio en C el cual es pasar el cntenido de un fichero a otro.Cree un fichero en el que escribi "hola12".Fui avanzando a lo largo del dia en el programa, hubo un punto en el que conseguí que se copiara completamente, pero el programa no se cerraba, se quedaba la consola trabada y se trababa ubuntu en si.
A ver si podeis ayudarme ;

Código: C
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. int main(void){
  4. FILE*arch,*archx;
  5. char c;
  6. arch=fopen("archivodeprueba.txt","r");
  7. archx=fopen("archivodestino.txt","w");
  8. while(!feof(arch)){
  9. fscanf(arch,"%c",&c);
  10. fprintf(archx,"%c",c);
  11. fclose(arch);
  12. fclose(archx);
  13. }
  14. exit(0);
  15. }

Aprovecho para realizar una cuestion rapida.He estado leyendo bastante acerca de beef pero me he quedado con la duda de en que ambito sirve.Podria aplicarlo por ejemplo en mi red local de wifi para realizar pruebas?

Un saludo
« Última modificación: Enero 24, 2016, 10:10:02 pm por Expermicid »

Desconectado rollth

  • *
  • Underc0der
  • Mensajes: 874
  • Actividad:
    0%
  • Reputación 16
  • El conocimiento es libre.
    • Ver Perfil
    • Whateversec
    • Email
  • Twitter: @RoloMijan
« Respuesta #1 en: Enero 24, 2016, 07:35:51 pm »
Prueba a cerrar los archivos fuera del bucle a ver que pasa :D

Conectado D4RKS0N1K

  • *
  • Underc0der
  • Mensajes: 119
  • Actividad:
    0%
  • Reputación 0
    • Ver Perfil
« Respuesta #2 en: Enero 24, 2016, 07:50:38 pm »
Prueba a cerrar los archivos fuera del bucle a ver que pasa :D

Buenas!
Gracias por responder
Ya probé a ponerlos fuera del bucle y copiaba la cadena bien, pero no finaliza el programa, y se queda la terminal colgada.
P.D:¿Alguien puede orientarme respecto a lo de beef?

Un saludo

Desconectado Stiuvert

  • *
  • Moderator
  • *
  • Mensajes: 2668
  • Actividad:
    1.67%
  • Reputación 14
    • Ver Perfil
  • Skype: stiuvert@gmail.com
  • Twitter: @Stiuvert
« Respuesta #3 en: Enero 24, 2016, 08:32:10 pm »
Función para copiar fichero origen con fichero destino:

Código: C
  1. int copy_file(char* f_org,char* f_dest);
  2. int main(){
  3.         if(!copy_file("fichero1.txt","fichero2.txt"))
  4.                 printf("El fichero no se puede copiar\n");
  5.         else printf("Fichero copiado correctamente\n");
  6.         return 0;
  7. }
  8.  
  9. int copy_file(char* f_org, char* f_dest){
  10.         FILE *fp_org,*fp_dest;
  11.         char c;
  12.  
  13.         if(!(fp_org=fopen(f_org,"rt")) || !(fp_dest=fopen(f_dest,"wt")))
  14.         {
  15.                 perror("Error al abrir el fichero");
  16.                 exit(EXIT_FAILURE);
  17.         }
  18.  
  19.         while((c=fgetc(fp_org))!=EOF && !ferror(fp_org) && !ferror(fp_dest))
  20.                 fputc(c,fp_dest);
  21.  
  22.         if(ferror(fp_org) || ferror(fp_org))
  23.                 return 1;
  24.  
  25.         fclose(fp_org);
  26.         fclose(fp_dest);
  27.         return 0;
  28. }

Respecto a la función "beef" no la conozco, nos puedes dar más detalles?

Saludos

Conectado D4RKS0N1K

  • *
  • Underc0der
  • Mensajes: 119
  • Actividad:
    0%
  • Reputación 0
    • Ver Perfil
« Respuesta #4 en: Enero 24, 2016, 08:51:36 pm »
Función para copiar fichero origen con fichero destino:

Código: C
  1. int copy_file(char* f_org,char* f_dest);
  2. int main(){
  3.         if(!copy_file("fichero1.txt","fichero2.txt"))
  4.                 printf("El fichero no se puede copiar\n");
  5.         else printf("Fichero copiado correctamente\n");
  6.         return 0;
  7. }
  8.  
  9. int copy_file(char* f_org, char* f_dest){
  10.         FILE *fp_org,*fp_dest;
  11.         char c;
  12.  
  13.         if(!(fp_org=fopen(f_org,"rt")) || !(fp_dest=fopen(f_dest,"wt")))
  14.         {
  15.                 perror("Error al abrir el fichero");
  16.                 exit(EXIT_FAILURE);
  17.         }
  18.  
  19.         while((c=fgetc(fp_org))!=EOF && !ferror(fp_org) && !ferror(fp_dest))
  20.                 fputc(c,fp_dest);
  21.  
  22.         if(ferror(fp_org) || ferror(fp_org))
  23.                 return 1;
  24.  
  25.         fclose(fp_org);
  26.         fclose(fp_dest);
  27.         return 0;
  28. }

Respecto a la función "beef" no la conozco, nos puedes dar más detalles?

Saludos

Estaba tratando de hacerlo sin funciones, el código que pones lo vi hace un par de horas buscando jajajaja, pero gracias por la intención.
Respecto a lo de beef no tiene nada que ver con C, me refería a BeEF - The Browser Exploitation Framework Project

Desconectado blackdrake

  • *
  • Co Admin
  • Mensajes: 1914
  • Actividad:
    0%
  • Reputación 15
    • Ver Perfil
« Respuesta #5 en: Enero 25, 2016, 06:33:06 am »
Respecto a lo de beef no tiene nada que ver con C, me refería a BeEF - The Browser Exploitation Framework Project

No mezcles temas por favor.

Saludos.



Conectado D4RKS0N1K

  • *
  • Underc0der
  • Mensajes: 119
  • Actividad:
    0%
  • Reputación 0
    • Ver Perfil
« Respuesta #6 en: Enero 25, 2016, 08:42:52 am »
Respecto a lo de beef no tiene nada que ver con C, me refería a BeEF - The Browser Exploitation Framework Project

No mezcles temas por favor.

Saludos.

Solo aproveché una duda para plantear otra mini-duda y evitar hacer dos tópicos, no veo nada malo en ello :l

saludos

Desconectado blackdrake

  • *
  • Co Admin
  • Mensajes: 1914
  • Actividad:
    0%
  • Reputación 15
    • Ver Perfil
« Respuesta #7 en: Enero 25, 2016, 08:56:21 am »
Respecto a lo de beef no tiene nada que ver con C, me refería a BeEF - The Browser Exploitation Framework Project

No mezcles temas por favor.

Saludos.

Solo aproveché una duda para plantear otra mini-duda y evitar hacer dos tópicos, no veo nada malo en ello :l

saludos

No hay nada de malo, pero para mantener un orden y facilitar que la solución de tu duda sea encontrada por otros usuarios que la necesiten, se crea otro post.

Saludos.



Desconectado Stiuvert

  • *
  • Moderator
  • *
  • Mensajes: 2668
  • Actividad:
    1.67%
  • Reputación 14
    • Ver Perfil
  • Skype: stiuvert@gmail.com
  • Twitter: @Stiuvert
« Respuesta #8 en: Enero 25, 2016, 10:02:09 am »
Código: C
  1.  
  2. #include <stdio.h>
  3. #include <stdlib.h>
  4.  
  5. int main(){
  6.   FILE *f_origen,*f_destino;
  7.   char c;
  8.  
  9.   f_origen=fopen("origen.txt","r");
  10.   f_destino=fopen("destino.txt","w");
  11.  
  12.   fscanf(f_origen,"%c",&c);
  13.  
  14.   while(c!=EOF) { // Comprobamos final de fichero
  15.         fprintf(f_origen,"%c",c);
  16.     fscanf(f_destino,"%c",&c);
  17.   } // Fin while
  18.  
  19.   fclose(f_origen); // Cerramos el fichero origen
  20.   fclose(f_destino); // Cerramos el fichero destino
  21.  
  22.   system("PAUSE");
  23.   return 0
  24. }
  25.  
  26.  
  27.  

 

¿Te gustó el post? COMPARTILO!



[SOLUCIONADO] Duda con " "

Iniciado por Krisium

Respuestas: 1
Vistas: 1807
Último mensaje Junio 10, 2010, 10:50:35 am
por Xa0s
[SOLUCIONADO] [Taller PHP] Duda taller php 1 ejercicio 4

Iniciado por arthusu

Respuestas: 2
Vistas: 1710
Último mensaje Julio 18, 2011, 07:19:33 pm
por arthusu
[SOLUCIONADO][Taller PHP] Duda taller php 2 ejercicio 2

Iniciado por Only

Respuestas: 3
Vistas: 2040
Último mensaje Agosto 05, 2011, 09:48:09 pm
por Only
[SOLUCIONADO] [Taller PHP] Duda taller php 1 ejercicio 2

Iniciado por arthusu

Respuestas: 3
Vistas: 2014
Último mensaje Julio 18, 2011, 02:20:03 am
por arthusu
[SOLUCIONADO] Duda con Windows 7 de 32 bits & 64 bits

Iniciado por andrestoushit

Respuestas: 2
Vistas: 992
Último mensaje Marzo 15, 2016, 04:01:16 pm
por Lah-Vahn