Главная Контакты


  На сайте

  Java, JavaScript
  Документация Perl
  Документация PHP
  Документация ASP
  Новости сайта
  Flash
  Интернет протоколы
  Apache
  Уроки программирования
  Язык программирования C
 


Типы, операторы и выражения


Операторы прироста и спада

C обеспечивает двумя необычными операторами прироста и спада переменных. Оператор прироста + + добавляет 1 к своему операнду, тогда как -, наоборот, отнимает 1. Мы уже не раз пользовались + + для увеличения значения переменных, как, например, в
if (c == '\ n')
+ + Nl;


Необычная сторона заключается в том, что как + +, так и - могут использоваться как префиксально операторы (перед переменной, например + + n), так и постфиксные (после переменной: n + +). В обоих случаях, как следствие - увеличивается значение n. Но выражение + + n увеличивает n до того, как это значение будет использовано, тогда как n + + увеличивает n после того, как было использовано исходное значение. Это означает, что в контексте, где действительно используется значение, а не только самый эффект, + + n и n + + - отличные. Если n равен 5, тогда
x = n + +;
присвоит x значение 5, зато в случае
x = + + n;
x равна уже 6. В обоих случаях, n станет равным 6. Операторы прироста и спада могут использоваться только с переменными; выражения вроде (i + j) + + запрещены.

В контексте, когда значение не нужно, а только эффект прироста, как например
if (c == '\ n')
nl + +;
префикс и постфикс тождественны. Но существуют случаи, когда надо обратиться только к одному, или только к другому. Например, рассмотрим функцию squeeze (s, c), которая удаляет все найденные знаки c из цепочки s.

/ * Squeeze: изымает все c с s * /
void squeeze (char s [], int c)
{
int i, j;

for (i = j = 0; s [i]! = '\ 0'; i + +)
if (s [i]! = c)
s [j + +] = s [i];
s [j] = '\ 0';
}

Другие статьи по теме:

- Типы, операторы и выражения
- Функции и структура программ
- Внешние переменные и область действия
- Символьные массивы
- Введение в c++


Голосование:
Чего Вы хотели бы видеть больше на сайте?

Статей, документации
Скриптов
Программ для вебмастера
Я не знаю



Другие голосования

Обмен кнопочками:



Приглашаем Вас обменяться кнопочками! Обращайтесь к администратору.


Новые статьи:


Наши партнеры:





2006-2024 © SMTI.RU
Главная страница | Связаться с нами