Я пытаюсь записать в файл wchar_t (s) от 0 до max (FFFF или 65 535). Процесс прошел успешно, но когда я открыл выходной файл, он закончился со значением 256 без символа. Почему это происходит?
Я пытался перевести программу в спящий режим и вместо wchar_t я использовал wstring (wstring записывается вместо wchar_t напрямую), но все закончилось одинаково.
// цикл
for (int y = 0; y < 256; y++) {
// "out" is declared as wofstream
out << y + 1 << ":\t";
for (int x = 0; x < 256; x++) {
wchar_t c = ((y * 256) + x);
wstring u;
u = c;
int l = (y * 256) + x;
out << "[" << l << " :: " << u << "]";
}
out << "\n";
}
Последним в файле должно быть «[65535 :: (здесь символ)]», но оно заканчивается на «[256 :: (без закрывающей скобки)»