Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ответы по инфе.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
469.24 Кб
Скачать

24. Манипуляторы потокового ввода и вывода

В С++ имеется ряд манипуляторов. Рассмотрим основные:

Манипулятор

Описание

endl

Помещение в выходной поток символа конца строки '\n'

dec

Установка основания 10-ой системы счисления

oct

Установка основания 8-ой системы счисления

hex

Установка основания 16-ой системы счисления

setbase

Вывод базовой системы счисления

width(ширина)

Устанавливает ширину поля вывода

fill('символ')

Заполняет пустые знакоместа значением символа

precision(точность)

Устанавливает количество значащих цифр в числе (или после запятой) в зависимости от использования fixed

fixed

Показывает, что установленная точность относится к количеству знаков после запятой

showpos

Показывает знак + для положительных чисел

scientific

Выводит число в экспоненциальной форме

get()

Ожидает ввода символа

getline(указатель, количество)

Ожидает ввода строки символов. Максимальное количество символов ограничено полем количество

25. Ссылочные типы данных и их применение

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

Ссылочный тип обозначается указанием оператора взятия адреса (&) перед именем переменной.

Хотя, как мы говорили, ссылка очень похожа на указатель, она должна быть инициализирована не адресом объекта, а его значением. Таким объектом может быть и указатель.

int ival = 1024;

// правильно: refVal - ссылка на ival

int &refVal = ival;

// ошибка: ссылка должна быть инициализирована

int &refVal2;

Указатели предназначены для хранения адресов областей памяти, а cсылка представляет собой синоним имени, указанного при инициализации ссылки.

26. Указатели в языке C++. Доступ к данным по указателю

Каждая переменная, которую вы объявляете в программе, имеет адрес – номер ячейки памяти, в которой она расположена. Адрес является неотъемлемой характеристикой переменной. Можно объявить другую переменную, которая будет хранить этот адрес и которая называется указателем. Указатели применяются при передаче в функцию параметров, которые мы хотим изменить, при работе с массивами, при работе с динамической памятью и в ряде других случаев.

Объявление указателя имеет следующий синтаксис:

<тип> *<идентификатор> [ = <инициализатор>];

Существуют две операции, которые имеют отношение к работе с указателями. Этими операциями являются:

  • операция взятия адреса (адресация) &;

  • операция взятия значения по адресу (косвенная адресация или разыменование) *.

int a, *p;

p = &a; // Переменной p присваивается адрес переменной a

*p = 0; // Значение по адресу, находящемуся в переменной p (т.е. значение переменной а), становится равным 0