Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Подбельский Фомин_Программирование на языке СИ_...doc
Скачиваний:
259
Добавлен:
10.08.2019
Размер:
53.81 Mб
Скачать

Запятая.

Запятая. Запятая может быть использована в качестве операции, а может применяться как разделитель. В последнем случае она разделяет элементы списков. Во-первых, это списки начальных значений элементов массивов и компонентов структур при их инициализации (примеры только что даны).

Другой пример списков - списки формальных и фактических параметров и их спецификаций в функциях.

Третье использование запятой как разделителя - в заголовке оператора цикла:

(В данном примере после выполнения цикла значением переменной z будет величина, равная n-му члену последовательности чисел Фибоначчи, определенной по значениям первых двух р1 и р2.)

Запятая как разделитель используется также в описаниях и определениях объектов (например, переменных) одного типа:

Запятая в качестве операции уже рассматривалась. Следует обратить внимание на необходимость с помощью круглых скобок отделять запятую-операцию от запятой-разделителя. Например, для элементов следующего массива m используется список с тремя начальными значениями:

В данном примере запятая в круглых скобках выступает в роли знака операции. Операция присваивания "=" имеет более высокий приоритет, чем операция "запятая". Поэтому вначале i получает значение 2, затем вычисляется произведение i*i, и этот результат служит значением выражения в скобках. Однако значением переменной i остается 2. Значениями т[0], т[1], т[2] будут соответственно 1, 4, 2.

Точка с запятой.

Точка с запятой. Каждый оператор, каждое определение и каждое описание в программе на языке Си завершает точка с запятой ';'. Любое допустимое выражение, за которым следует ';', воспринимается как оператор. Это справедливо и для пустого выражения, т.е. отдельный символ "точка с запятой" считается пустым оператором. Пустой оператор иногда используется как тело цикла. Примером может служить цикл for, приведенный выше для иллюстрации особенностей использования запятой в качестве разделителя. (Вычисляется n-й член последовательности чисел Фибоначчи.) Примеры операторов-выражений:

Двоеточие.

Двоеточие. Для отделения метки от помечаемого ею оператора используется двоеточие ':':

метка: оператор;

Многоточие.

Многоточие. Это три точки '...' без пробелов между ними. Оно используется для обозначения переменного числа параметров у функции при ее определении и описании (при задании ее прототипа). При работе на языке Си программист постоянно использует библиотечные функции со списком параметров переменной длины для форматных ввода и вывода. Их прототипы выглядят следующим образом:

Здесь с помощью многоточия указана возможность при обращении к функциям использовать разное количество параметров (не меньше одного, так как параметр format должен быть указан всегда и не может опускаться).

Подготовка своих функций с переменным количеством параметров на языке Си требует применения средств адресной арифметики, например макросов, предоставляемых заголовочным файлом stdarg.h. О возможностях упомянутых макросов подробно говорится в главе 5.