В каком случае можно применить следующее:

  • Автор темы Yalud
  • Дата начала
Статус
Закрыто для дальнейших ответов.
Y

Yalud

Гость
#1
Я исследовал код одной программы написанной на языке C.
В замешательство меня привела следующая инструкция.

Variable = Function ;

При этом Function определена ранее как:

TIP Function(TIP1 arg1, TIP2 arg2);

Вопрос в следующем: как должна быть определена переменная Variable, чтобы выражение
Variavle=Function; имело смысл и принималось компилятором?
 
Y

Yalud

Гость
#3
Кажется сам разобрался. Всем спасибо! Кому интересно ответ такой:

#define TIP void
#define TIP1 int
#define TIP2 int


TIP function(TIP1 arg1, TIP2 arg2)
{
return ;
}

int main( int argc, char * argv[] )
{

TIP (*Variable)(TIP1,TIP2); //Это и есть ответ!

Variable=function;
return 0;
}

Переменная Variable в этом случае называется указателем на функцию и содержит адрес.
 
04.09.2006
2 566
2
Минск
#4
<!--QuoteBegin-European+19:01:2007, 11:07 -->
<span class="vbquote">(European @ 19:01:2007, 11:07 )</span><!--QuoteEBegin-->TIP Variable
[snapback]53674" rel="nofollow" target="_blank[/snapback]​
[/quote]
Я сразу и не понял, что ты хочешь узнать про указатели на функцию. Постановка вопроса мне показалась очень странной
 
Статус
Закрыто для дальнейших ответов.