Я что-то кодировал, и в некоторых ситуациях мой код работал некорректно, поэтому я решил записать некоторые выходные данные в файл для отладки. Программа просто объединяет некоторые символы из строки (и она не выходит за пределы) и печатает их в файл. Он не имеет ничего общего с сообщениями об ошибках или чем-то еще, а входная строка - просто набор случайных символов. Но я получаю немного мусора в выводе, например:
f::xsgetn error reading the file
sgetn error reading the file
ilebuf::xsgetn error reading the file
(Я удалил вывод программы, и это только лишние вещи.)
Насколько я знаю, если есть какие-либо ошибки, должно быть выдано исключение. Что происходит и как я могу это исправить?
То же самое происходит, когда я печатаю вывод, используя стандартный вывод. Все используемые библиотеки являются стандартными (например, iostream, fstream и т. Д.)
PS: по некоторым причинам я не могу опубликовать весь код. Вот часть, которая создает выходные данные и передает их в поток: (tri is и string, и определен ранее. Center является целым числом и находится внутри границ строки. Fout является ранее определенным файловым потоком.)
string op = "" + tri[center];
fout << center << "<>" << op << endl;