Программирование >>  Расширенная версия языка c++ 

1 ... 95 96 97 [ 98 ] 99 100 101 ... 227


Ofstream out( test );

iff lout) { .. - ..

cou << Файл открыть невозможно\п ;

return 1;

вывод на экран

cou at Высокое напряжение \п ; cou not Выключить ,вет\п ;

вывод в файл

out atn Высокое напряжение\п ;

ou not <<. Выклють свет\п ;

out.close();

return 0;


1. Попытайтесь адаптировать программы предыдущей главы для работы с файлами.


; Проверка усвоения материала главы

Теперь вам необходимо выполнить следующие упражнения и ответить на вопросы.

Создайте манипулятор для вывода трех символов табуляции и установки ширины поля равной 20. Продемонстрируйте работу манипулятора.

2. Создайте манипулятор для ввода, который должен считывать и отбрасывать все неалфавитные символы. При считывании первого алфавитного символа, манипулятор должен возвратить его во входной поток и закончить работу. Назовите манипулятор Hndalpha.

3. Напишите программу копирования текстового файла. При копировании измените регистр всех букв.

return stream;



Глава 9. Дополнительные возможности выводав C++ 301

4. Напишите программу, которая считывает текстовый файл, а затем сообщает, сколько раз каждая буква алфавита появляется в файле.

5. Если вы еще этого али, добавьте в ваши решения упражнений 3 и

4 полный контроль ошибок.

6. Какая функция перемещает указатель считывания? Какая функция перемещает указатель записи?

Проверка усвоения материала в целом

В этом разделе проверяется, хорошо ли вы усвоили материал этой и предыдущих глав.

1. Ниже приведена переработанная версия класса inventory из предыдущей главы. Добавьте функции store() и re rieve(). Затем создайте небольшой

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

ttinclude<fstream> ttinclude-=-.lostream>

ttinclude<cstring> using namespace std;

ttdefine SIZE 40

class inventory {

cha SIZE] ; название предмета

int onhand; даеств ., выданных на руки экземпляров

double cost; цена предмета

public:

inventory{char *i, int o, double c); {

strcpy(item, i);

onhand = o; cost = c;

void store(fstream istream); void retrieve(fstream sstream);

friend ostream uoperator (ostream Sstream, inventory o> friend istream &operator (istream sstream, inventory 4ob) ;

>,

ostream ator (ostream eam, inventory ob) i

stream ob.itera ; ob. onhand;

stream на руках по цене . Ob.cost \n;



return stream; ; . ., .. : i

istream fioperator (istream sstream, inventory sob)

cout Введите название предмета: ; - -

stream

cou Введите число выданных экземпляров: ; stream

cou << Введите стоимость экземпляра: ;

stream

return stream;

2. Необязательное задание. Создайте класс stack для хранения символов в файле, а не в массиве.



1 ... 95 96 97 [ 98 ] 99 100 101 ... 227

© 2006 - 2025 pmbk.ru. Генерация страницы: 0.009
При копировании материалов приветствуются ссылки.
Яндекс.Метрика