Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Электронный конспект лекций (семестр 1).doc
Скачиваний:
31
Добавлен:
29.02.2016
Размер:
321.02 Кб
Скачать
    1. Операции увеличения и уменьшения на 1

Очень часто в программе приходится увеличивать или уменьшать значение переменной на единицу. Чтобы сделать эти действия наиболее эффективными и удобными для использования, в C++ имеют­ся специальные знаки операций: ++ (увеличить на единицу) и -- (умень­шить на единицу):

i++;// или++i;

j--; // или --j;

Эти операции часто называют операциями, соответственно, инкрементированияидекрементирования. Имеются две формы этих операций:пре­фиксная(знаки операции располагаются слева от операнда) ипостфиксная(знаки операции располагаются справа от него).

Различие в действии двух форм операций ++ и -- сказывается, если эти операции используются в более сложном выражении. Тогда префиксная операция означает изменение значения операнда до его использования в выражении, а постфиксная – после.

    1. Трактовка истинности

В C++ применяется расширенное толкование истинности. Оно заключается в том, что в условиях можно использовать не только логические, но и числовые выражения. При определении истинности числовых выражений (то есть, при преобразовании числовых значений в логические) ноль преобразуется в значениеfalse, любое ненулевое числовое значение – в значениеtrue.

Логические выражения, в свою очередь, могут использоваться в числовых выражениях. В таких случаях значение falseпреобразуется в числовое значение 0, а значениеtrue– в числовое значение 1.

    1. Операция ?

C++ имеет очень мощную тернарную операцию?, которую можно использовать вместо конструкцииif-elseвсе с той же целью – сокращения записи программ. Операция? имеет следующий вид:

операнд_1 ? операнд_2 : операнд_3

где операнд_1,операнд_2иоперанд_3– это выражения.

Результатом выполнения операции ?является значение второго или третьего операнда в зависимости от истинности первого. Если логическим значением первого операнда являетсяtrue, результатом операции является значение второго операнда, еслиfalse– третьего. Пример:

y = x >= 9 ? 100 : 200;

    1. Операция «запятая»

Знак “запятая” часто используется для разделения элементов каких-либо последовательностей (например, при пречислении объявляемых переменных или параметров функции).

Кроме того, в языке определена операция “запятая”, которая связывает (группирует) два или более действий (выражений) и обеспечивает их последовательное выполнение (вычисление). Приоритет операции "запятая" ниже, чем у всех остальных операций C++.

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

    1. Операция sizeof

Операция sizeofпозволяет опреде­лить, сколько памяти занимает то или иное значение. Например,

sizeof (int)

определяет число байтов, отводимое под переменные типа int, а

sizeof b

– число байтов, занимаемое переменной b.

Операндом унарной операции sizeofявляется имя типа или выраже­ние. Операнд заключается в скобки (если операнд – выражение, скобки не обязательны). Результат операции – целое число, равное количеству байтов, необходимых для хранения в памяти заданной величины.

  1. ЯзыкC++: функции

Подпрограммы в C/C++ называютсяфункциями. Функции могут возвращать результат своего выполнения. Такие функции в язы­ке C++ имеют практически тот же смысл, что и функции в математике. Функция вызывается с определенными аргументами (фактическими параметрами), выполняет необходимые действия и возвращает результат в точку вызова. Результаты выполнения таких функций могут являться составными частями выражений.

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

Программа на языке C++ состоит, по крайней мере, из одной функ­ции – функции main. Программа может содержать и другие функции. Выполнение программы всегда начинается с функцииmain, других особенностей у функцииmainнет.

В C++ нет вложенных функций, то есть невозможно определить функцию внутри другой функции.

Каждая функция в C++ – это обособленный фрагмент программы, блок. Доступ к операторам функции нельзя получить с помощью какого-либо оператора перехода (например, невозможно, используяgoto, перейти в середину другой функции). Единственный возможный способ выполнения операторов функции – ее вызов.