Título: Cadenas de caracteres. Función para comparar una cadena ignorando signos. C++ Publicado por: seryioo en 12 Agosto 2015, 13:44 pm Hola a todos. Esta vez traigo una duda con ejercicios de cadenas de caracteres.
Tengo que hacer una función que compare 2 cadenas ignorando las mayúsculas y minúsculas y me devuelva si son o no iguales. Había pensado en hacerme una función "void aMayuscula (TCadena cad)" que convirtiera toda la cadena a mayuscula para implementarla en otra función y comparar las 2 cadenas pasadas a mayúscula. Pero para hacer esto tendría o que crear una cadena nueva copiando el contenido de la original ya en mayúscula o sobrescribir la original, cosa que no puedo porque en la pLantilla que me dan me pasan las cadenas como "const" Lo que he hecho al final es una función "char aMayuscula (TCadena cad, unsigned pos)" que va dentro de un while que recorre las 2 cadenas y compara una a una las letras devueltas por la función "char aMayuscula". Código
A continuación, la función que compara las cadenas: Código
Al compilar me da error "invalid conversion from 'const char*' to 'char*'" Y no entiendo por qué sale. ¿Qué tengo mal? Título: Re: Cadenas de caracteres. Función para comparar una cadena ignorando signos. C++ Publicado por: ivancea96 en 12 Agosto 2015, 13:50 pm Código
Estás pasándole a una función que pide un TCadena, una variable const TCadena. Lo que debes hacer, es ponerle const TCadena a aMayuscula(). Siempre que una variable que sea un puntero o una referencia no se vaya a modificar, conviene ponerle const. |