• Viernes 15 de Noviembre de 2024, 02:30

Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.


Temas - bendroide

Páginas: [1]
1
C/C++ / duda sobre regex en C/c++
« en: Viernes 29 de Abril de 2011, 05:30 »
hola amigos, tengo una duda con respecto a expresiones regulares, he leido que para hacerlo mas facil, tengo que usar boost,el problema que tengo es que si boost lo puedo agregar al dev-c++ (estoy en windows), o a borland c++, el programa que necesito realizar es el siguiente

ingrese expresion regular: (a|b)*ab
introduzca cadenas posibles:
aabbab
aabbbba
aababbb

cadena acepta es:
aabbab

el problema que tengo es que como usar boost para esto, utilizando una funcion o como, tambien lei por INET que se podrian hacer con arrays, la verdad no se tendria que fijarme (ojo no pido que me resulevan el problema solo pido sus opiniones :mellow: ), o como puedo hacer esa comparacion para  que la expresion regular acepte una cadena correcta xDD :huh: ...

saludos,
ben

PD: tiene que aceptar cualquier expresion regular,no solo esa xD :(

2
C/C++ / estrucutras, punteros
« en: Jueves 7 de Abril de 2011, 23:40 »
Código: C
  1. #include <stdio.h>
  2. #include <conio.h>
  3. #include <stdlib.h>
  4. #include <string.h>
  5.  
  6. struct agenda{
  7.     char nombre [50];
  8.     char telefono[25];
  9.     char email[50];
  10.     };
  11.     struct nodo{
  12.         struct agenda dato;
  13.         struct nodo *proximo;    
  14.         } ;
  15.    
  16.     struct nodo *nuevonodo
  17.            int colavacia(struct nodo *)
  18.     struct nodo *creacola (struct nodo *, struct agenda);
  19.    
  20.     void mostrar (struct nodo *);
  21.    
  22.     void main()
  23.     {
  24.         struct nodo *pri=NULL, *ult=NULL;
  25.         struct agenda x;
  26.        
  27.         printf ("ingrese nombre: ");
  28.         gets(x.nombre);
  29.         while (strcmpi(x.nombre, "fin"))
  30.    
  31.     {
  32.         printf ("ingrese telefono: ");
  33.         gets (x.telefono);
  34.         printf ("ingrese mail: ");
  35.         gets(x.mail);
  36.         ult=creacola(ult,x);
  37.         if (pri==NULL) pri=ult; //si es la 1 pasada pongo en pri el valor del primer nodo
  38.         printf ("ingrese nombre: ");
  39.         gets(x.nombre);
  40.     }
  41.     if (colavacia(pri)==1)
  42.     {
  43.     printf ("No se ingresaron registros");getch();
  44.     }
  45.     else mostrar(pri);
  46.    
  47.     }
  48.     struct nodo *nuevonodo()
  49.     {
  50.         struct nodo *p;
  51.         p=(struct nodo *)malloc(sizeof(struc nodo));
  52.         if(p==NULL)
  53.         {
  54.             printf ("memoria ram llena");
  55.             getch();
  56.             exit(0);
  57.         }
  58.         return p;
  59.     }
  60.    
  61.     struct nodo *creacola(struct nodo *ult, struct agenda x)
  62.     {
  63.         struct nodo *p;
  64.         p=nuevonodo();
  65.         (*P).dato=x;
  66.         (*p).proximo=NULL;
  67.         if(ult!=NULL) (*ult).proximo=p; //si hay nodo anterior en prox pongo la direccion del nodo actual
  68.         return p;
  69.     }
  70.    
  71.     int colavacia(struct nodo *pri)
  72.     {
  73.         if(pri==NULL) return 1;
  74.         else
  75.         return 0;
  76.     }
  77.    
  78.     void mostrar (struct nodo *pri)
  79.     {
  80.         struct nodo *aux;
  81.        
  82.     while(pri!=NULL)
  83.     {
  84.         printf("Nombre: %s - telefono: %s - Mail: %s n",
  85.         pri->dato.nombre,pri->dato.telefono,pri->dato.mail);
  86.         aux=pri;
  87.         pri=(*pri).proximo;
  88.         free(aux);
  89.     }
  90.     getch();
  91. }
  92.  

me tira un error en
Código: C
  1. int colavacia(struct nodo *)
  2.  

alguien me puede ayudar :p

saludos,
ben

Páginas: [1]