[C con Clase] Punteros a cadenas
jose luis
jcmdustin en gmail.com
Jue Oct 20 22:03:12 CEST 2011
Hola a todos...
necesito su ayuda porfavor, me pidieron que aga un programa que busque una subcadena en una cadena por ejemplo:
ABCD, la subcadena CD se encuentra en la cadena, mientras que l subcadena BC no. he intentao resolverlo con y sin punteros, y no he podido llegar a la solucion...
//indicar si una subcadena se encuentra en una cadena
#include <iostream>
#include <cstring>
#include <stdio.h>
using namespace std;
bool buscasubcadena(char a[100],char b[100]);
int main()
{
char cad[100], subcad[100];
cout<<"Ingrese la cadena: "; gets(cad);
cout<<"Ingrese la subcadena: "; gets(subcad);
if(buscasubcadena(cad,subcad))
{
cout<<"La cadena: "<<endl; cout<<cad;
cout<<endl; cout<<"contiene a la subcadena: "<<endl;
cout<<subcad;
}
return 0;
}
bool buscasubcadena(char *a,char *b)
{
int n,m;
char *p=a,*q=b;//quiero usar estos punteros para resolver el problema
n=strlen(a);
m=strlen(b);
while(m>0)
{
if (a[m]!=b[n])
return false;
m--; n--;
}
return true;
}
no se que pueda estar mal en mi codigo, pues mi idea es recorer la cadena desde la ultima pocision e ir comparando cada elemento con la subcadena, pero no logro tener el resultado deseado, agradesco su ayuda :">
Se aprende a programar programando...
Más información sobre la lista de distribución Cconclase