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

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

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





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

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

#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; просмотров: 794. Нарушение авторских прав; Мы поможем в написании вашей работы!




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


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


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


Расчетные и графические задания Равновесный объем - это объем, определяемый равенством спроса и предложения...

Случайной величины Плотностью распределения вероятностей непрерывной случайной величины Х называют функцию f(x) – первую производную от функции распределения F(x): Понятие плотность распределения вероятностей случайной величины Х для дискретной величины неприменима...

Схема рефлекторной дуги условного слюноотделительного рефлекса При неоднократном сочетании действия предупреждающего сигнала и безусловного пищевого раздражителя формируются...

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

Йодометрия. Характеристика метода Метод йодометрии основан на ОВ-реакциях, связанных с превращением I2 в ионы I- и обратно...

Броматометрия и бромометрия Броматометрический метод основан на окислении вос­становителей броматом калия в кислой среде...

Метод Фольгарда (роданометрия или тиоцианатометрия) Метод Фольгарда основан на применении в качестве осадителя титрованного раствора, содержащего роданид-ионы SCN...

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