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

 

 


Tema destacado: Sigue las noticias más importantes de seguridad informática en el Twitter! de elhacker.NET


  Mostrar Mensajes
Páginas: 1 2 3 4 5 6 [7] 8 9 10 11 12
61  Programación / Programación C/C++ / Emular una funcion de una cadena(Resuelto) en: 4 Julio 2011, 19:29 pm
Buenas a todos,estoy intentando emular la cadena strtok para que pida un caracter de la frase y lo elimine de esa cadena,quedando la cadena final sin ese caracter,lamentablemente me sale este error:
Código:
In function 'void cortarcadena(char*, char*)':
incompatible types in assignment of 'char' to 'char [30]'

He ido cambiando cosas pero no se donde está el fallo,tiene que ver con asignar una cadena a un caracter,pero lo que asigno es un caracter a un caracter,pego el codigo:
Código
  1. #include <stdio.h>
  2.  
  3. void cortarcadena(char *frase,char *caracter){
  4.    char *p = frase;
  5.    char *q = caracter;
  6. char c_temp;
  7. char c_ori[30];
  8.    while(*p!='\0'){
  9.                       if(*q==*p){
  10.                                  c_temp= *p;
  11.                                  *p++;
  12.  
  13.                                  }else{
  14.                                        c_ori=*p;
  15.                                        *p++;
  16.  
  17.                                        }
  18.                                        }
  19.                                       puts(c_ori);
  20.                                        }
  21.                                        int main (void){
  22.                                            char frase [30];
  23.                                            char caracter;
  24.                                            printf("vamos a quitar un caraacter a la frase");
  25.                                            printf("escriba la primera frase:  ");
  26.                                            gets(frase);
  27.                                            printf("escriba el caracter a eliminar: ");
  28.                                            scanf("%c",&caracter);
  29.                                            cortarcadena(frase,&caracter);
  30.                                            getchar();
  31.                                            return 0;
  32.                                            }
  33.  

Gracias al que pueda ayudarme.

Salu2
62  Programación / Programación C/C++ / Re: hola a todos!! / Duda sobre variable tipo bool en: 4 Julio 2011, 19:22 pm
Pues eso parece,las variables booleanas están definidas en el estandarte C++,por lo que un compilador que sea solo de C no la leerá,por eso hay que hacer una conversión de datos como te dijo el compañero vertex@Symphony.

Una última cosa,si quieres que tu código se lea bien,pon esto antes del return 0:

Código:
getchar();

Esta linea espera a que se pulse intro para finalizar,y podrás leer el programa entero.

Salu2
63  Programación / Programación C/C++ / Re: hola a todos!! / Duda sobre variable tipo bool en: 4 Julio 2011, 18:51 pm
Gets es seguro,por lo menos siempre que lo he usado pero hay uno más seguro todavía que es el fgets, te dejo información:

http://c.conclase.net/librerias/?ansifun=fgets

En cuanto al código que puse me funciona bien,pero claro no había caído en tu compilador.

Salu2
64  Programación / Programación C/C++ / Re: hola a todos!! / Duda sobre variable tipo bool en: 4 Julio 2011, 18:06 pm
Buenas,

Sería algo así:

Código
  1. #include <stdio.h>
  2. #include <string.h>
  3. #define max 100
  4.  
  5. bool my_strstr (char*, char*);
  6.  
  7. int main()
  8. {
  9.   char s1[max],s2[max];
  10.   bool conf;
  11.   printf ("ingrese la cadena principal: ");
  12.   gets(s1);
  13.   printf ("ingrese la cadena a buscar: ");
  14.   gets(s2);
  15.   conf = my_strstr (s1,s2);
  16.   if (conf == true)
  17.       printf ("la primer cadena contiene a la segunda");
  18.   else
  19.       printf ("la primer cadena no contiene a la segunda");
  20.       getchar();
  21.   return 0;
  22. }
  23.  
  24.  
  25. bool my_strstr (char *big, char *sub)
  26. {
  27.   bool baby;
  28.   if (strstr(big, sub) != NULL)
  29.   {
  30.       baby = true;
  31.   }
  32.   else
  33.   {
  34.       baby = false;
  35.   }
  36.   return baby;
  37. }

Este ha sido un poco modificado,pero me funciona perfecto.Por cierto,si tienes que desarrollar una funcion como la de strtr¿te permiten utilizar el strstr en la funcion?¿No deberias crear una funcion sin recurrir a la funcion strstrt?

Porque entonces no le veo mucha utilidad al ejercicio  :huh:

Salu2
65  Programación / Programación C/C++ / Re: Soy muy nuevo, necesito ayuda en programacion en: 3 Julio 2011, 20:05 pm
http://www.cplusplus.com/
http://c.conclase.net/
http://foro.elhacker.net/programacion_cc/librospapers_cc-t296234.0.html

Un saludo  :silbar:
66  Programación / Programación C/C++ / Re: Ayuda! en: 1 Julio 2011, 23:08 pm
Revisa las clases:

 invalid use of qualified-name 'persona::ingresar'
 invalid use of qualified-name 'persona::visualizar'

Ahi esta el fallo  :silbar:

Salu2
67  Programación / Programación C/C++ / Re: Ayuda! en: 1 Julio 2011, 22:05 pm
Te falta la libreria cstdlib para llamar al sistema,además la variable opc es de tipo char,y en el switch la estas metiendo en los case como numeros,no obstante creo que el fallo es de las clases,aunque no lo encuentro:

Código
  1. #include<iostream>
  2. #include<conio.h>
  3. #include<stdio.h>
  4. #include<string.h>
  5. #include<ctype.h>
  6. #include<cstdlib>
  7.  
  8. using namespace std;
  9.  
  10. class persona {
  11.  
  12.        int grad;
  13.        char nombre;
  14.        char fecha;
  15.  
  16.     public:
  17.       persona(void);
  18.         persona(char n=0, char fn=0, int g=0): nombre(n), fecha(fn), grad(g){};
  19.  
  20.          void ingresar(char n, char fn, int grad);
  21.          ~persona();
  22.          void visualizar();
  23.  
  24. } ;
  25.  
  26. //******************************************************************************
  27. void persona::ingresar(char n, char fn, int g){
  28.  
  29.      cout<<"Ingresar los datos de la persona: "<<endl;
  30.      cout<<"Ingresar nombre: "<<endl;
  31.      cin>>n;
  32.      nombre=n;
  33.      cout<<"Ingresar fecha de nacimiento: "<<endl;
  34.      cin>>fn;
  35.      fecha=fn;
  36.      cout<<"Ingresar año de graduación: "<<endl;
  37.      cin>>g;
  38.      grad=g;
  39.  
  40. }
  41.  
  42. //****************************************************************************
  43. void persona::visualizar(){
  44.  
  45.          cout<<"Datos de la persona: "<<endl;
  46.          cout<<"Nombre: "<<nombre<<endl;
  47.          cout<<"Fecha de nacimiento: "<<fecha<<endl;
  48.          cout<<"Año de graduación: "<<grad<<endl;
  49.  
  50.  
  51. }
  52.  
  53. //****************************************************************************
  54. int main(){  // declaracion del cuerpo principal del programa
  55. class persona *ptrpersona;
  56. char opc; // declaracion de variable
  57.  
  58. do{
  59. // condicion para el menu se repita hasta que se ingrese la opcion salir
  60.                system("CLS"); //Limpia la pantalla
  61.            cout<<"                MENU  "<<endl;
  62.                cout<<"a.- Ingresar una persona."<<endl;
  63.            cout<<" b.- Visualizar la persona."<<endl;
  64.                cout<<" c.- Salir."<<endl;
  65.            cin>>opc;  // lee la variable
  66.  
  67.  
  68.      switch(opc){
  69.         case'a':system("CLS");
  70.                void persona::ingresar(char n, char fn, int g);
  71.            break;
  72.         case'b':system("CLS");    //se muestra la funcion en pantalla segun la opcion ingresada
  73.            void persona::visualizar();
  74.  
  75.            break;
  76.         case'c':system("CLS");
  77.  
  78.            exit(1);
  79.         default: cout<<"opcion no valida"<<endl;
  80.            system("pause");
  81.            break;
  82.            }
  83. }while(opc!='3');  // condicion para el menu se repita hasta que se ingrese la opcion salir
  84.  
  85. }
68  Programación / Programación C/C++ / Re: Problema básico en c++ en: 1 Julio 2011, 19:19 pm
Pues a mi me parece más fácil C++, será para gustos xD

Y que lo digas  :xD Dije desde mi propia experiencia,cada uno tienes sus propios gustos en cuanto  C/C++ se refiere.

Salu2
69  Programación / Programación C/C++ / Re: Problema básico en c++ en: 1 Julio 2011, 19:03 pm
Te recomendaria aprender las operaciones con los archios en C,son mucho mas intuitivos y faciles,por lo menos hablo desde mi experiencia  ::)

Salu2
70  Programación / Programación C/C++ / Re: ayuda funciones! en: 1 Julio 2011, 18:59 pm
Tambien podrias emular a la funcion strcmp con punteros,asi te valdria tanto para windows como para linux creo  :xD Si quieres avisame y te paso el code que he hecho para ver si te sirve.

Salu2
Páginas: 1 2 3 4 5 6 [7] 8 9 10 11 12
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines