Бит кода ниже извлекает коды ASCII из символов.Когда я конвертирую символы в нормальном регионе ASCII, я получаю ожидаемое значение.Когда я конвертирую £ и € из расширенной области, я получаю загрузку 1, заполняющую INT, в котором я храню символ.
например, вывод ниже:
45 (ascii E, как и ожидалось) FFFFFF80 (расширенный ascii €, как и ожидалось, но дополненный единицами)
Это не вызывает у меня проблемы, но мне просто интересно, почему это происходит.Вот код ...
unsigned int asciichar[3];
string cTextToEncode = "E€";
for (unsigned int i = 0; i < cTextToEncode.length(); i++)
{
asciichar[i] = (unsigned int)cTextToEncode[i];
cout << hex << asciichar[i] << "\n";
}
Кто-нибудь может объяснить, почему это так?Спасибо