C tem um limite de profundidade de recursão como o Python?
Ao contrário do Python, que tem uma profundidade máxima de recursão como resultado de sua natureza interpretada, C é compilado e não enfrentam tais restrições diretamente. No entanto, C tem seu próprio limite de recursão imposto pelo sistema operacional por meio do tamanho da pilha que ele aloca.
O tamanho da pilha em C é geralmente significativamente menor que a RAM disponível e pode ser modificado dentro do sistema operacional (como usar ulimit em sistemas Unix). No macOS, o limite de pilha padrão é de 8 MB.
Para calcular a profundidade máxima de recursão, é necessário determinar o tamanho do registro de ativação da função recursiva. Isso pode ser feito usando um desmontador de depurador para determinar os ajustes do ponteiro da pilha. Isso fornece uma estimativa mais precisa em comparação com outros métodos, como calcular a diferença entre ponteiros em chamadas de função.
Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.
Copyright© 2022 湘ICP备2022001581号-3