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


  На сайте

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


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


Мы уже видели, что утверждение присвоения возвращает определенное значение и может употребляться в больших выражениях; типичным примером может служить
while ((c = getchar ())! = EOF)
...


Другие операторы присвоения (+ =, -= и т.д.) также могут встречаться внутри выражений, хотя и не так часто.

В таких выражениях, тип выражения присвоения совпадает с типом левого операнда, а значение соответствует значению после присвоения.

Упражнение 2-9. В двоичной цифровой системе (two's complement number system), x & = (x-1) изымает крайний правый бит с x. Объясните почему. Воспользуйтесь этого наблюдения для написания более быстрой версии bitcount.

Выражения условий

Выражения вроде
if (a> b)
z = a;
else
z = b;
вычисляют z как наибольшее значение из числа a и b. Условное выражение с использованием тройничного оператора "?:" Дают альтернативный способ написания подобной конструкции. В выражении
expr1? expr2: expr3
выражение expr1 рассматривается первым. Если expr1 ненулевой (истина), тогда исчисляется expr2, и это и будет конечным значением целого выражения условия. В противном случае вычисляется expr3, и он станет конечным значением. Оценивается только один из expr2 и expr3. Таким образом, чтобы установить z до максимального значения a или b, мы напишем
z = (a> b)? a: b; / * z = max (a, b) * /


Следует заметить, что выражение условия - это действительно выражение, и может быть использован там где любой другой. Если expr2 и expr3 - разных типов, тип результата определяется правилами преобразования, оговоренных ранее в этом разделе. Например, если f имеет тип float, а n - это int, тогда выражение
(N> 0)? f: n
будет типа float, независимо от того, n положительный.

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

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


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

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



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

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



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


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


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





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