В операторе if
любое значение , отличное от нуля , оценивается как истинное.
При первом вызове будет выполняться рекурсивный l oop, начиная с v=5
, уменьшая v
до 4
перед первым if
, а затем продолжая уменьшать v
на каждой итерации, пока v
не станет 0, ломая l oop.
Второй вызов будет запустить новую рекурсивную l oop, начиная с v=0
, уменьшая v
до -1
перед первой if
, а затем продолжая уменьшать v
на каждой итерации, пока v
не переполнится и в конечном итоге снова становится 0, ломая l oop.
Если он даже далеко, так как каждый вызов main()
рекурсивно толкает данные в стек вызовов, пока не останется больше места в стеке имеется.