2014-10-27 7 views
1

Есть ли функция для получения символа в позиции n из строкового потока без копирования в строку сначала и без удаления символа из буфера? В документации я вижу только функцию get для извлечения следующего символа, но нет функции для доступа к символу в определенной позиции.Получить символ из std :: stringstream

т.д .:

std::stringstream s; 
s << "abcdefg"; 
char c = s.getCharAt(3); // I am looking for this method 
// c should be 'd' now 

ответ

4

Вы можете s.seekg(n, std::ios_base::cur) и прочитать символ в данной позиции. Вы также можете указать позицию с помощью std::ios_base::beg или std::ios_base::end для позиции относительно начала или конца потока, а не текущей позиции.

Смежные вопросы