C++   ::   Хилл Мюррей

Страница: 279 из 357

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

Для простых объектов (целое, строка и т.п.) требуется по оному вызову на каждый. Как выясняется, это не отличается от прочих средств ввода/вывода, работающих с объектами на этом уровне.



8.8 Упражнения

1. (*1.5) Считайте файл чисел с плавающей точкой, составьте из пар считанных чисел комплексные числа и выведите комплексные числа.

2. (*1.5) Определите тип name_and_address (имя_и_адрес). Определите для него «„ и “». Скопируйте поток объектов name_and_address.

3. (*2) Постройте несколько функций для запроса и чтения различного вида информации. Простейший пример – функция y_or_n() в #8.4.4. Идеи: целое, число с плавающей токой, имя файла, почтовый адрес, дата, личные данные и т. д. Постарайтесь сделать их защищенными от дурака.

4. (*1.5) Напишите программу, которая печатает (1) все бувы в нижнем регистре, (2) все буквы, (3) все буквы и цифры, (4) все символы, которые могут встречаться в идентификаторах С++ на вашей системе, (5) все символы пунктуации, (6) целые значения всех управляющих симвлов, (7) все символы пропуска, (8) целые значения всех символов пропуска, и (9) все печатаемые символы.

5. (*4) Реализуйте стандартную библиотеку ввода/вывода C («stdio.h») с помощью стандартной библиотеки ввода/вывда С++ («stream.h»).

6. (*4) Реализуйте стандартную библиотеку ввода/вывода С++ («stream.h») с помощью стандартной библиотеки ввода/ввода C («stdio.h»).

7. (*4) Реализуйте стандартные библиотеки C и С++ так, чтбы они могли использоваться одновременно.

8. (*2) Реализуйте

|< Пред. 277 278 279 280 281 След. >|

Java книги

Контакты: [email protected]