Должна ли эта программа работать бесконечно, потому что главное вызывается каждый раз? И почему он выводит 0 0 0 0
? Я знаю, что это вопрос о нобе, но я не могу это получить. Что такое --i
do и каков эффект объявления i как статического?Почему эта программа не работает бесконечно?
int main()
{
static int i=5;
if(--i){
main();
printf("%d ",i);
}
}
Read: [Значения, полученные в случае рекурсивной функции] (http://stackoverflow.com/questions/17785765/values-obtained-in-case-of-a-recursive-function/17785800#17785800) –
Is ваш вопрос действительно «что означает« -i »?», а не «почему это не бежит бесконечно?»? –
@OliCharlesworth Привет, нет. Я знаю, что означает - i. Я хотел знать, как использовать его, если условия работают? Выполняется ли это до тех пор, пока я не стану 0? – rishiag