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

Реферат Курсовая Конспект

Указатель на функцию

Указатель на функцию - раздел Информатика, Лекция 4. Указатель На Функцию. Указатель На Функцию Содерж...

Лекция 4.

Указатель на функцию.

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

· для косвенного вызова функции (т.е. не через её имя, а через обращение к переменной, хранящей её адрес);

· для передачи имени функции в другую функцию.

 

Указатель функции имеет тип “указатель функции, возвращающей значение заданного типа и имеющей аргументы заданных типов”. Эта информация задаётся при описании указателя функции:

Тип (* имя_указателя) (список типов аргументов);

где

Тип - тип рез-та функции;

имя_указателя – имя указателя функции;

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

Пример: int (*pf) (double, double);-

задаёт указатель с именем pf на функцию, возвращающую значение типа int и имеющую два аргумента типа double.

Если есть функция с такими характеристиками, например:

int f (double a, double b) { /* тело функции*/ }

можно указателю pf присвоить имя функции pf=f; или pf=&f;

После этого можно вызвать функцию f()

как через имя функции: cout<<f (3.2, 2.5);

так и через указатель: cout<<pf (3.2, 2.5);

или cout<<(*pf) (3.2, 2.5);

Часто, чтобы сделать программу легко читаемой используют переименование типов ( программист даёт новое имя типу).

typedef тип новое_имя [размер];

//в [] необязательная часть.

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

 

typedef тип_результата (*тип-указателя) (список типов параметров) ;

 

Можно описать, например, тип TF как тип указателя на функцию с двумя параметрами типа double и результатом типа int:

typedef int (*TF) (double, double);

 

Если определён тип указателя на функцию, его можно использовать:

· определить переменную этого типа; например:

TF qf;

Этой переменной можно присвоить значение qf=f; либо qf=&f;

и обращаться к этой функции через указатель qf.

· этот тип указателя можно использовать для описания параметра функции, т.е. в некоторую функцию можно передать как параметр другую функцию, описав этот параметр с типом указателя, например:

void NN (int a, int b, TF w)

{double x, y;……int z= w (x, y);…}

 

Рассмотрим некоторые примеры функций, в которые передаются имена других функций.

 

Некоторые итерационные методы решения уравнений f(x)=0

Корнем уравнения f(x) =0 называют такое значение x=ξ, что f (ξ)=0.

I этап. Отделение корней: Найти такой отрезок [α,β], на котором определены и непрерывны функции f(x), f’(x), f’’(x) и лежит один и только один корень уравнения. Достаточные условия этого:

· f(α)* f(β)<0;

· f’(x) на [α,β] сохраняет знак.

II этап.Уточнение корня. Найти приближённое значение корня с заданной точностью ε.

 

Некоторые методы уточнения корня:

I. Метод деления отрезка пополам.

1. t= f(α); значение функции на левом конце отрезка.

2. xc=( α+β)/2; середина отрезка [α,β].

3. Пока |α - β|>= ε выполнять

{r =f (xc); значение функции в средней точке.

Если (r * t>0) //r и t одного знака

то α=xc; выбираем правую половину отрезка

иначе β=xc; выбираем левую половину отрезка

xc=( α+β)/2; новая середина отрезка [α,β].

}

4. т.к. |α - β|< ε, то середина xc- корень с точностью ε.

 

II. Метод касательных.

x0 , x1 , x2 ,. . . xn-1 , xn , xn+1 ,. . . ., Где x0 = α, если f(α) *f’’(α)>0

– Конец работы –

Используемые теги: Указатель, функцию0.053

Если Вам нужно дополнительный материал на эту тему, или Вы не нашли то, что искали, рекомендуем воспользоваться поиском по нашей базе работ: Указатель на функцию

Что будем делать с полученным материалом:

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

Еще рефераты, курсовые, дипломные работы на эту тему:

ВОПРОС N 1. Функцию меры стоимости выполняют деньги
Ульянова... ВОПРОС N Функцию меры стоимости выполняют деньги... Тип вопроса Выбор единственно правильного ответа...

ПРЕДМЕТНЫЙ УКАЗАТЕЛЬ
На сайте allrefs.net читайте: "ПРЕДМЕТНЫЙ УКАЗАТЕЛЬ"

Указатель "x-y" координат (история создания "мышки")
Официальным е названием и было Указатель XY-координат для дисплея. Вообще Энгельберт с группой друзей таких же энтузиастов как он сам долгое время… Лаборатория провела огромное количество тестов, в рамках существующей… Экран дисплея был условно расчерчен сеткой пересекающихся горизонтальных и вертикальных линий. Соответственно в…

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

0.028
Хотите получать на электронную почту самые свежие новости?
Education Insider Sample
Подпишитесь на Нашу рассылку
Наша политика приватности обеспечивает 100% безопасность и анонимность Ваших E-Mail
Реклама
Соответствующий теме материал
  • Похожее
  • По категориям
  • По работам