不一樣編程語言在發生stackoverflow以前支持的調用棧最大嵌套層數

今天個人一位同事在微信羣裏發了一張圖片,勾起了個人好奇心:不一樣編程語言支持的函數遞歸調用的最大嵌套層數是?javascript

Java 1.8

private static void recur(int i){

  System.out.println("Stack level: " + i);

  recur(++i);

}

測試結果:8644java

Javascript in Chrome

Chrome版本:node

Version 70.0.3538.102 (Official Build) (64-bit)編程

function a(i){

   console.log("stack level: " + i)

   a(i+1);

}

a(0);

測試結果:11412微信

JavaScript in nodejs

nodejs version: v8.11.3編程語言

測試結果:11213函數

Golang

版本:測試

測試結果:3947556ui

ABAP

data: lv_temp type int4.

form recur using iv type int4.

  sy-index = iv.

  lv_temp = iv + 1.

  perform recur using lv_temp .

endform.

START-OF-SELECTION.

   perform recur using 0.

其實是out-of-memory錯誤。code

測試結果:12258206

要獲取更多Jerry的原創文章,請關注公衆號"汪子熙":

相關文章
相關標籤/搜索