Почему выходной поток останавливается в определенной точке - PullRequest
0 голосов
/ 17 мая 2019

Я пытаюсь записать в файл 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 :: (без закрывающей скобки)»

...