русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Внешнее определение функции


Дата добавления: 2015-01-16; просмотров: 445; Нарушение авторских прав


 

 

Определение функции имеет форму

 

определение-функции:

 

спецификаторы-описания описатель-функции

тело-функции

необ

 

Единственными спецификаторами класса памяти, допускаемыми в

качестве спецификаторов-описания, являются EXTERN или

STATIC; о различии между ними смотри п. 19.2. Описатель фун-

кции подобен описателю для "функции, возвращающей...", за

исключением того, что он перечисляет формальные параметры

определяемой функции.

 

Оисатель-функции:

описатель (список-параметров

необ)

список параметров:

идентификатор

идентификатор, список-параметров

 

тело-функции имеет форму

 

тело-функции:

список-описаний составной-оператор

 

Идентификаторы из списка параметров и только они могут

быть описаны в списке описаний. Любой идентификатор, тип ко-

торого не указан, считается имеющим тип INT. Единственным

допустимым здесь спецификатором класса памяти является

REGISTER; если такой класс памяти специфицирован, то в нача-

ле выполнения функции соответствующий фактический параметр

копируется, если это возможно, в регистр.

Вот простой пример полного определения функции:

 

INT MAX(A, B, C)

INT A, B, C;

\(

INT M;

M = (A>B) ? A:B;

RETURN((M>C) ? M:C);

\)

 

Здесь INT - спецификатор-типа, MAX(A,B,C) - описатель-функ-

ции, INT A,B,C; - список-описаний формальных параметров, \(

... \) - Блок, содержащий текст оператора.

В языке "C" все фактические параметры типа FLOAT преоб-

разуются к типу DOUBLE, так что описания формальных парамет-

ров, объявленных как FLOAT, приспособлены прочесть параметры

типа DOUBLE. Аналогично, поскольку ссылка на массив в любом

контексте (в частности в фактическом параметре) рассматрива-



ется как указатель на первый элемент массива, описания фор-

мальных параметров вила "массив ..." приспособлены прочесть

: "указатель на ...". И наконец, поскольку структуры,

объединения и функции не могут быть переданы функции, бесс-

мысленно описывать формальный параметр как структуру,

объединение или функцию (указатели на такие объекты, конеч-

но, допускаются).

 



<== предыдущая лекция | следующая лекция ==>
 | 


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 1.544 сек.