Студопедия — Основные операторы языка
Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Основные операторы языка






Операторы препроцессора могут появляться в любом месте программы и их дей­ствие распространяется на весь исходный файл.

Весьма часто используются следующие операторы препроцессора:

#1пс1ис1е

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

#1пс1ис1е < 5-ЬсНо.Ъ>;

Когда исходный текст программы обрабатывается препроцессором, на место этой инструкции ставится содержимое расположенного в некоем стандартном ме­сте (каталоге ШСШЭЕ) файла з^сНо. Ъ, содержащего макроопределения и объяв­ления данных, необходимых/для работы функций из стандартной библиотеки вво­да-вывода.

Директива #йеГше позволяет дать в программе макроопределения (или задать макросы). Оператор макроопределения имеет вид:

#с1е^1пе < макроимя> Сстрока лексем> или

#с! е^1пе < макроимя (Ссписок параметров>) > Сстрока лексем>

Макроимя — идентификатор. Строка лексем — последовательность лексем от Макроимени до конца строки. Точка с запятой в конце макроопределения не ста­вится.

Препроцессорная обработка макроопределения сводится к тому, что любое появление Макроимени (макровызов) в качестве отдельной лексемы в тексте про­граммы, расположенном после макроопределения, ведет к замене этого Макро­имени на указанную Строку лексем.

Оператор присваивания имеет общий вид

< Имя переменной> = < Выражение>;

В языке Си разрешается включать присваивания в выражения, то есть присваива­ние может рассматриваться как операция с учетом старшинства и влияния скобок.

В языке Си имеются специальные операции

+= -= *= /= %=

для компактной записи операторов присваивания. Так, следующие две записи на языке Си эквивалентны: 1=1+2 и 1+=2.

Операция присваивания сама по себе имеет значение (равное значению выра­жения, стоящего справа от знака «=») и может входить в выражения.

Оператор ±^/е1зе имеет вид

И (< выражение>)

Соператор1>

е1зе

< оператор2>;

Здесь часть е1зе < оператор2> является необязательной, можно применять и одиночный оператор

(< выражение>) < оператор1>;

Вначале вычисляется значение выражения. Оператор1 выполняется, если зна­чение выражения истинно. Если выражение ложно (его значение равно нулю) и если есть часть с е1зе, то выполняется оператор2.

При программировании требуется аккуратно различать знаки = и ==, потому что в ряде случаев компилятор не сможет обнаружить ошибки, связанной с неправиль­ным использованием знаков этих операций, что приведет к неверным результатам.

В языке Си имеется компактный способ записи оператора 1^/е1зе. Он называ­ется «условным выражением» или «тернарной операцией». Такое выражение вы­глядит так:

В1? В2: ВЗ

Сначала вычисляется значение выражения В1. Если оно отлично от нуля (ис­тинно), то вычисляется значение выражения В2, которое и становится значением условного выражения. В противном случае вычисляется значение выражения ВЗ, и оно становится значением условного выражения. Условное выражение удобно ис­пользовать в тех случаях, когда имеется некоторая переменная, которой можно присвоить одно из двух возможных значений. Типичным примером являются при­сваивание переменной значения большей из двух величин: шах= (а> Ъ)? а: Ъ;

Оператор-переключатель зуп±ЬсЪ удобен в тех случаях, когда в программе не­обходимо произвести выбор одного из нескольких вариантов. Его синтаксис:

змИ: сЪ. (< выражение>)

{

сазе < константа1>: Ссписок операторов1>;

сазе < константа2>: Ссписок операторов2>;

сазе < константаЫ>: Ссписок операторовЫ>;

с! е: Еаи11:: Ссписок операторов>;

}

Оператор-переключатель выполняется следующим образом. Вычисляется зна­чение выражения в скобках, приведенного после ключевого слова з^л^сЬ, затем программа просматривает список меток, указанных после слов са$е, до тех пор, пока не находит ту, которая соответствует данному значению. Далее программа переходит к выполнению оператора, расположенного в этой строке. Если подходя­щей метки не найдется и если существует строка с меткой с! е: Еаи11::, то будет выполняться оператор, помеченный этой меткой. В противном случае произойдет переход к оператору, расположенному за оператором змИ: сЪ.







Дата добавления: 2014-11-10; просмотров: 759. Нарушение авторских прав; Мы поможем в написании вашей работы!



Практические расчеты на срез и смятие При изучении темы обратите внимание на основные расчетные предпосылки и условности расчета...

Функция спроса населения на данный товар Функция спроса населения на данный товар: Qd=7-Р. Функция предложения: Qs= -5+2Р,где...

Аальтернативная стоимость. Кривая производственных возможностей В экономике Буридании есть 100 ед. труда с производительностью 4 м ткани или 2 кг мяса...

Вычисление основной дактилоскопической формулы Вычислением основной дактоформулы обычно занимается следователь. Для этого все десять пальцев разбиваются на пять пар...

Кран машиниста усл. № 394 – назначение и устройство Кран машиниста условный номер 394 предназначен для управления тормозами поезда...

Приложение Г: Особенности заполнение справки формы ву-45   После выполнения полного опробования тормозов, а так же после сокращенного, если предварительно на станции было произведено полное опробование тормозов состава от стационарной установки с автоматической регистрацией параметров или без...

Измерение следующих дефектов: ползун, выщербина, неравномерный прокат, равномерный прокат, кольцевая выработка, откол обода колеса, тонкий гребень, протёртость средней части оси Величину проката определяют с помощью вертикального движка 2 сухаря 3 шаблона 1 по кругу катания...

Индекс гингивита (PMA) (Schour, Massler, 1948) Для оценки тяжести гингивита (а в последующем и ре­гистрации динамики процесса) используют папиллярно-маргинально-альвеолярный индекс (РМА)...

Методика исследования периферических лимфатических узлов. Исследование периферических лимфатических узлов производится с помощью осмотра и пальпации...

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

Studopedia.info - Студопедия - 2014-2024 год . (0.011 сек.) русская версия | украинская версия