Давай. Докажи что твой Морзе в принципе работает не для русских букв а для любых международных символов.
#include <iostream>
#include <string>
#include <sstream>
using namespace std;
string encrypt(const string &s) {
ostringstream result;
for (string::size_type i = 0; i < s.size(); i++) {
switch (s[i]) {
case 'А':
result << "•−" << " ";
break;
case 'Б':
result << "−•••" << " ";
default:
cout << "Неизвестный символ в строке! Работа программы прервана" << endl;
return 0;
}
}
return result.str();
}
// string decrypt() {}
int main() {
string s = 'А';
cout << s;
cout << encrypt(s);
}
Дык русские символы в UTF-8 занимают 2 байта, а char вмещает только 1 байт.