Я почти закончил свою программу, но есть одна последняя ошибка, с которой у меня возникают проблемы с выводом. Предполагается, что программа проверяет около 10 зашифрованных слов по списку слов, чтобы увидеть, что зашифрованные слова являются анаграммами. Чтобы сделать это, я алфавитизировал каждое слово в списке слов (apple станет aelpp), установил его в качестве ключа карты и сделал соответствующую запись исходным неалфавитизированным словом.
Программа запутывается, когда дело доходит до записей на карте. Если длина записи не превышает 6 символов, программа помечает случайный символ в конце строки. Я сузил, что может быть причиной проблемы в один цикл:
while(myFile){
myFile.getline(str, 30);
int h=0;
for (; str[h] != 0; h++)//setting the initial version of str
{
strInit[h]=str[h]; //strInit is what becomes the entry into the map.
}
strInit[h+1]='\0'; //I didn't know if the for loop would include the null char
cout<<strInit; //Personal error-checking; not necessary for the program
}
И, если это необходимо, вот вся программа:
Программа