2012-04-22 2 views
0

int (* ptFunction) (float, char, char);Назначение адреса функции с другим типом возвращаемого значения указателю функции

char func (float, char, char);

Если мы используем разные типы возвращаемых данных, как это было сделано выше в двух объявлениях функций, будет ли следующее задание работать правильно или даст ошибку компиляции ??

ptFunction = &func;

+0

Это лучше для вас, чтобы указать, какой язык вы означают (C или C++)? После этого можно проверить его с помощью теста. (Я не стандартный фанат, так что я не мог ответить на этот вопрос другим способом) – parallelgeek

+0

Вышеприведенный фрагмент кода от C++. –

ответ

0

Следующий код вызовет ошибку (в г ++):

int (*pFun)(float, char, char); 

char fun1(float, char, char) {} 

int main() { 

    pFun = &fun1; // error: invalid conversion from char (*)(float, char, char) to int (*)(float, char, char) 

    return 0; 
} 
Смежные вопросы