TellG перемещается после операции записи в файл - PullRequest
0 голосов
/ 21 мая 2011

Почему TellG () перемещается после операции записи, я полагаю, это должен быть Tellp ()?

std::fstream fs("c:\\log.txt", std::ios::in | std::ios::out | std::ios::trunc);
fs << "write";
std::cout << fs.tellg() << std::endl;
fs.close();

Выход:

5

1 Ответ

2 голосов
/ 21 мая 2011

Поток фактически поддерживает только один указатель, поэтому указатели чтения и записи фактически одинаковы.если вы хотите выполнять чтение и запись в один и тот же файл, вы должны поддерживать свой собственный указатель и выполнять поиск перед каждой операцией чтения / записи.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...