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

 

 


Tema destacado: Únete al Grupo Steam elhacker.NET


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Duda con mi codigo (Manejo de archivos)
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Duda con mi codigo (Manejo de archivos)  (Leído 2,893 veces)
Jesuscc29

Desconectado Desconectado

Mensajes: 23


Shattering The Skies Above!


Ver Perfil
Duda con mi codigo (Manejo de archivos)
« en: 12 Agosto 2010, 23:48 pm »

Que tal, estuve aprendiendo hace poco sobre el mandejo de archivos en C, asi que traté de hacer un codigo el cual busca un String en un texto.. Pero no me sale como quiero.. Aqui está el codigo:

Código
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. void yes();
  4. void nada_vato();
  5. int main(int argc, char *argv[])
  6. {
  7.  char mararc[100];
  8.  char marca[]= "hacked";
  9.  FILE *arc;
  10.  int string;
  11.  arc = fopen("Prueba.txt", "w");
  12.  fprintf(arc, "Jesus antonio Cota Cota era un gran joven.\n");
  13.  fprintf(arc, "Un dia se topo con un gran mar de conociminetos de C.\n");
  14.  fprintf(arc, "Asi que supo mas! hacked\n");
  15.  fclose(arc);
  16.  arc = fopen("Prueba.txt", "r");
  17.  do
  18.  {
  19.      c = fscanf(arc, "%s", mararc);
  20.      if (mararc == marca)
  21.      {
  22.           yes();
  23.      }      
  24.      else
  25.      {
  26.          continue;
  27.      }
  28.  }
  29.  while (c != EOF);
  30.  fclose(arc);
  31.  nada_vato();
  32.  system("PAUSE");
  33.  return 0;
  34. }
  35.  
  36. void yes()
  37. {
  38.     printf("si esta la marca en le archivo!.\n");
  39.     system("PAUSE");
  40.     exit;
  41. }
  42.  
  43. void nada_vato()
  44. {
  45.     printf("No esta la marca, agregala.\n");
  46.     system("PAUSE");
  47.     exit;
  48. }
  49.  

si me dijeran que error tengo se los agradeceria demasiado =D..
Adios!


En línea



leogtz
. . .. ... ..... ........ ............. .....................
Colaborador
***
Desconectado Desconectado

Mensajes: 3.069


/^$/


Ver Perfil WWW
Re: Duda con mi codigo (Manejo de archivos)
« Respuesta #1 en: 12 Agosto 2010, 23:50 pm »

Código:
if (mararc == marca)

No puedes hacer eso.

Utiliza strncmp().

c no está definido.


En línea

Código
  1. (( 1 / 0 )) &> /dev/null || {
  2. echo -e "stderrrrrrrrrrrrrrrrrrr";
  3. }
  4.  
http://leonardogtzr.wordpress.com/
leogutierrezramirez@gmail.com
Jesuscc29

Desconectado Desconectado

Mensajes: 23


Shattering The Skies Above!


Ver Perfil
Re: Duda con mi codigo (Manejo de archivos)
« Respuesta #2 en: 12 Agosto 2010, 23:59 pm »

aH..Olvide 'C' xD... Pero el strncmp() compara si por ejemplo:

Código
  1. if( strcmp( palabra1, palabra2 ) == 0 )
  2. {
  3.      printf("Mismo taman.\n");
  4. }else
  5. {
  6.      printf("Son diferentes");
  7. }

No?.. Porque lo que quiero hacer es ver que el String sea igual a una palabra del Texto.. Me explico? :P
En línea



leogtz
. . .. ... ..... ........ ............. .....................
Colaborador
***
Desconectado Desconectado

Mensajes: 3.069


/^$/


Ver Perfil WWW
Re: Duda con mi codigo (Manejo de archivos)
« Respuesta #3 en: 13 Agosto 2010, 00:04 am »

Compara contenido, no tamaño.

Código:
if(strcmp(cadena, otra) == 0)
/* iguales */
else
/* Desiguales */
En línea

Código
  1. (( 1 / 0 )) &> /dev/null || {
  2. echo -e "stderrrrrrrrrrrrrrrrrrr";
  3. }
  4.  
http://leonardogtzr.wordpress.com/
leogutierrezramirez@gmail.com
Jesuscc29

Desconectado Desconectado

Mensajes: 23


Shattering The Skies Above!


Ver Perfil
Re: Duda con mi codigo (Manejo de archivos)
« Respuesta #4 en: 13 Agosto 2010, 00:11 am »

Mmm.. Cierto, ya lo hice funcionar.. Muchas Gracias =D..  ;-)
En línea



do-while


Desconectado Desconectado

Mensajes: 1.276


¿Habra que sacarla de paseo?


Ver Perfil
Re: Duda con mi codigo (Manejo de archivos)
« Respuesta #5 en: 13 Agosto 2010, 00:42 am »

¡Buenas!

Una cosilla mas, esta parte te sobra:
Código
  1. else
  2. {
  3.    continue;
  4. }
  5.  

continue se utiliza en las estructuras de repeticion para ignorar todo el codigo que le sigue y forzar la siguiente iteracion, pero en este caso no tienes nada de codigo despues de continue, asi que realmente, el else entero esta de mas. No quiero decir que lo que has hecho sea incorrecto. No supone ninguna incorreccion, simplemente es codigo de mas que has metido y que realmente no tiene ningun efecto.

¡Saludos!
En línea

- Doctor, confundo los números y los colores.
- Vaya marrón.
- ¿Marrón? ¡Por el culo te la hinco!
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Manejo de Archivos - PROBLEMA!!!
Programación C/C++
clodan 3 3,043 Último mensaje 14 Octubre 2010, 18:34 pm
por Horricreu
Código de generación de archivos dlc
Java
Proteus1989 3 2,995 Último mensaje 7 Febrero 2012, 19:13 pm
por Proteus1989
Duda sobre manejo de archivos
Programación C/C++
xogeid46 3 2,347 Último mensaje 19 Enero 2013, 05:48 am
por apuromafo CLS
Duda Manejo De Archivos De Acceso Aleatorio
Programación C/C++
Omar_2013 2 2,487 Último mensaje 1 Abril 2014, 20:22 pm
por Omar_2013
Duda del manejo del comando VMIFS
GNU/Linux
ChaleYo 0 1,948 Último mensaje 19 Octubre 2020, 20:31 pm
por ChaleYo
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines