Важно помнить, что все обычные операции ввода/вывода сохраняют свое значение для ввода/ вывода в массивы. Сюда относится также произвольный доступ с использованием функций seekg() и seekp(). В качестве примера следующая программа получает восьмой символ в iostr и выводит его. (Выводится символ h.)
#include <iostream.h>
#include <strstrea.h>
int main()
{
char iostr[80];
strstream ios (iostr, sizeof(iostr) , ios::in | ios::out);
char ch;
ios << "abcdefghijklmnopqrstuvwxyz";
ios.seekg(7, ios::beg);
ios >> ch;
cout << "Character at 7: " << ch;
return 0;
}
Можно проводить поиск где угодно внутри массива, но нельзя осуществлять поиск за его пределами.
Также можно использовать функции наподобие tellg() и tellp().