遞迴函式終止方式

2021-06-16 14:25:33 字數 413 閱讀 6824

1、

我們知道區域性靜態變數存放在堆中而不是棧中,所以它在程式生命週期內都是存在的,只是只有在函式內才能被訪問,其內容是上次處理後的內容或是初始化後的內容,呼叫多次都同乙個變數例項。所以區域性靜態變數是可以控制遞迴函式最終結束的。

2、可能通過異常來控制遞迴的結束。其實這種情況很常見,每個應用程式的預設棧空間大小是不會太大的,很容易因為堆疊溢位而讓遞迴函式終止。此外,還可以會發生其它的異常,比如記憶體空間不足、除零等等。這些異常都可以讓遞迴函式終止。

3、我們一般所說的全域性變數都是針對乙個應用程式而言的,所以我們還可以利用bios或os的一些資料或一些標準庫的全域性值來控制遞迴過程的終止。比如利用日期時間、利用庫中的隨機數等等。

4、我們還可以把一些資料寫入到bios或os的系統資料區,也可以把資料寫入到乙個檔案中,以此來控制遞迴函式的終止。

執行緒終止方式

如果需要只終止某個執行緒而不終止整個執行緒,可以有三種方法 a 從主線程函式 return.從別的函式裡return會回到主線程,而不會直接把整個執行緒結束 這種方法對主控執行緒不適合,從 main 函式return 相當於呼叫 exit.b 乙個執行緒可以呼叫 pthread cancel 終止同...

執行緒終止方式

一般來說,posix的執行緒終止有兩種情況 正常終止和非正常終止。執行緒主動呼叫pthread exit 或者從執行緒函式中return都將使執行緒正常退出,這是可預見的退出方式 非正常終止是執行緒在其他執行緒的干預下,或者由於自身執行出錯 比如訪問非法位址 而退出,這種退出方式是不可預見的。一般情...

程序終止的方式

程序有5種正常終止及3中異常終止方式。5種正常終止方式具體如下 1 在main函式內執行return語句。等效於呼叫exit。2 呼叫exit函式。此函式由isoc定義,其操作包括呼叫個終止處理程式,然後關閉所有標準i o流等。3 呼叫 exit或 exit函式。isoc定義 exit,其目的是為程...