Префиксная и постфиксная формы.
Инкремент.
Операция, которую мы сейчас рассмотрим, является более специфичной, нежели предыдущие. При программировании нам часто приходится иметь дело с увеличением какой-либо величины на единицу. Это можно сделать «в лоб», используя оператор
а = а+1; / /увеличениепеременнойа на 1
или с помощью сложения с присваиванием:
а += 1; //увеличение переменной а на 1
Но есть еще один, более сжатый, чем предыдущие, способ:
++а; //увеличениепеременной а на 1
Операция ++ инкрементирует, или увеличивает на 1, свой операнд.
Знак операции инкремента может быть записан двояко: в префиксной форме, когда он расположен перед своим операндом, и в постфиксной форме, когда операнд записан перед знаком ++. В чем разница? Часто инкрементирование переменной производится совместно с другими операциями над ней:
в = с*++а;
Возникает вопрос — что выполняется раньше: инкрементирование или умножение? В данном случае первым выполняется инкрементирование. Каким образом это определить? Префиксная форма записи и означает то, что инкремент будет выполнен первым. Если бы использовалась постфиксная форма, то сначала бы выполнилось умножение, а затем переменная «а» была бы увеличена на 1.
|
|
Операция декремента, обозначаемая --, в отличие от операции инкремента, уменьшает,а не увеличивает, на единицу свой операнд. Декремент также допускает префиксную и постфиксную формы записи.
5) Функции.
Функция представляет собой именованное объединение группы операторов. Это объединение может быть вызвано из других частей программы.
Причиной, из-за которой в своё время были созданы функции, стало стремление сократить размер программного кода. Любая последовательность операторов, встречающаяся в программе более одного раза, будучи вынесенной в отдельную функцию, сокращает размер программы. Несмотря на то, что функция в процессе выполнения программы исполняется не один раз, ее код хранится только в одной области памяти.
В С++ функции состоят из следующих компонентов:
-объявление(прототип): содержит имя функции, типы её аргументов и возвращаемого значения. Указывает компилятору на то, что определение функции будет сделано позднее;
-вызов: указывает на то, что необходимо выполнить функцию;
-определение: является собственно функцией. Содержит код, предназначенный для исполнения.