Мой коллега утверждает, что тип-литье возвращаемого значения функции не определен в C, однако я не могу найти что-либо, чтобы поддержать его требование.Допустимо ли вводить тип возвращаемого значения функции C?
Я знаю, что тип литья указатель функции плохо, смотрите здесь: Casting a function pointer to another type
Но я хочу, чтобы подтвердить, что следующий код будет приемлемым и четко определены:
// Some function
int ret = foo(bar);
// Some variable with some different type
unsigned int a;
// Cast function result to match variable type
a = (unsigned int) foo(bar);
0 Не могу представить, почему ваш коллега полагает это - это, безусловно, 'c' язык. Это общая (и требуемая) функциональность. – KevinDTimm
Возвращаемое значение - всего лишь rvalue – user3528438
Любые претензии должны подтверждаться некоторыми доказательствами. У вашего коллеги есть один? В противном случае это называется «спекуляцией». –