Вход
Наше всё
Теги
codebook
无线电组件
Поиск
Опросы
Закон
Пятница
22 ноября
О смысле всего сущего
0xFF
Средства и методы разработки
Мобильная и беспроводная связь
Блошиный рынок
Объявления
Микроконтроллеры
PLD, FPGA, DSP
AVR
PIC
ARM, RISC-V
Технологии
Кибернетика, автоматика, протоколы
Схемы, платы, компоненты
Микроконтроллеры AVR
432936
Топик полностью
fk0
, легенда
(14.08.2013 13:30, просмотров: 242)
ответил
Vit
на
если inline foo1() вызывает некую foo2(), то компилятору неведомо, не вызовет ли в конечном счете foo2(), допустим, через вызов foo3(), функцию foo1(). тем самым заинлайнить вроде как и не получается
Хвостовая рекурсия прекрасно оптимизируется в страшный goto.
[ZX]
Ответить
а как быть с локальными/стековыми переменными? я знаю, что в лиспах и подобных функциональных языках любят разворачивать рекурсию, но в с не встречал
-
ыыыы
(14.08.2013 15:13
)
Никак не быть. На то она и хвостовая рекурсия: "Хвостовая рекурсия — специальный случай рекурсии, при котором любой рекурсивный вызов является последней операцией перед возвратом из функции." (C)
-
fk0
(14.08.2013 15:40
)