En palabras mas simples, busca cada caracter en al string y cuenta con que frecuencia se repite, guardandolo en el registro del caracter correspondiente.
Me presenta un mensaje de error en la linea en la que comparo el caracter que extraigo del string con el que tengo almacenado en el registro.
Código:
Este es el error que me presenta.using namespace std; struct letraalfabeto { public: char letra; int frecuencia; }; int main(){ string texto1; letraalfabeto alfabeto[224]; texto1 = "some text asd 123456"; alfabeto[1].letra = ' '; alfabeto[1].frecuencia = 0; for (int i = 2; i<224; i++){ //Guarda valores ascii en el arreglo de registros alfabeto[i].letra = alfabeto[i-1].letra+1; alfabeto[i].frecuencia = 0; } for (int i=1; i<texto1.length(); i++){ for (int j=0; j>texto1.length(); j++){ if ((char)texto1.substr(i-1,1) == alfabeto[j].letra){ alfabeto[i].frecuencia=alfabeto[j].frecuencia+1; } } } return 0; }
Código:
Pueden ayudarme a solventar este error? 28:33 [Error] invalid cast from type 'std::basic_string<char>' to type 'char' 28:33: error: invalid cast from type 'std::basic_string<char>' to type 'char' if ((char)texto1.substr(i-1,1) == alfabeto[j].letra){