Программирование на C и C++

Онлайн справочник программиста на C и C++

Произвольный доступ в массив

Важно помнить, что все обычные операции ввода/вывода сохраняют свое значение для ввода/ вывода в массивы. Сюда относится также произвольный доступ с использованием функций 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().