我有兩個相同類型的數組(a []和b []),大小(它們的大小可以是非常大)並且具有相同的元素值。 現在用這些陣列我可以調用這兩個函數中的一個遞歸,其定義是有什麼區別兩個函數的遞歸調用,具有不同數量的數組作爲參數傳遞將具有系統堆棧
void function_1(int *a);
void function_2(int *a,int *b);
我想知道有什麼區別,這些函數的遞歸調用,都會對系統堆棧即會他們都需要相同的空間或者如果第二個函數需要更多的空間,遞歸調用這些函數創建的差異數量是多少。
'function_1'在堆棧上傳遞1個指針; 'function_2'在堆棧上傳遞2個指針。就這樣。指針的大小通常是4或8字節(32位或64位應用程序)定義的實現。 –
'function_2()'將需要比'function_1()'大兩倍的堆棧大小。 – user0042
參數是指針,而不是數組。 – molbdnilo