这个菜逼今天被卡递归空间了。
菜鸡的理解中,如果递归中没有任何参数和返回值,也没有任何局部变量,64 位机子,执行一次函数的空间消耗应该是 24Byte24Byte24Byte,即保存 eax,ebx,ecx 的值。
eax,ebx,ecx
实际上开了 O2O2O2 之后递归占用的空间变大了。 是否是因为 O2O2O2 优化使用了额外的寄存器。
关于存在局部变量,参数,返回值的递归空间消耗,还希望大佬们解惑。