目錄
零基礎 C/C++ 學習路線推薦 : C/C++ 學習目錄 >> C 語言基礎入門
一.exit 函數簡介
#include <stdlib.h>
/*描述:終止正在執行的進程*/
/*
函數參數:
status 等於 1 ,表示異常退出.這個1是返回給操作系統的;
status 等於 0 ,表示正常退出;
status 等於其他值 ,都表示異常退出;
*/
void exit(int status);
其中,exit 函數參數會被傳遞給一些操作系統,status 狀態標識了應用程序的一些運行信息,這個信息和機器和操作系統有關,一般是 0 為正常退出,非 0 為非正常退出。包括 UNIX, Linux 和 MS DOS 。
標准 C 里有 EXIT_SUCCESS 和 EXIT_FAILURE 兩個宏,用 exit(EXIT_SUCCESS),可讀性比較好一點。
exit(1);//跟return(1)一樣效果;
二.exit 函數使用
/******************************************************************************************/
//@Author:猿說編程
//@Blog(個人博客地址): www.codersrc.com
//@File:C語言教程 - C語言 exit 函數
//@Time:2021/07/16 07:30
//@Motto:不積跬步無以至千里,不積小流無以成江海,程序人生的精彩需要堅持不懈地積累!
/******************************************************************************************/
#include <stdio.h>
#include <stdlib.h>
int main(void)
{
puts( "About to exit..../n" );
exit( EXIT_SUCCESS );
puts( "This will never be executed!/n" );
return 1;
}
/*
輸出:
About to exit....
*/
由上面代碼可以看出,exit 函數會終止正在執行的進程,執行了 exit 函數之后,並不會再繼續執行之后的代碼;
三.exit 函數和 return 區別
return 返回函數值,是關鍵字; exit 是一個函數。
return 是語言級別的,它表示了調用堆棧的返回;而 exit 是系統調用級別的,它表示了一個進程的結束。
return 是函數的退出(返回);exit 是進程的退出。
return 是 C 語言提供的,exit 是操作系統提供的(或者函數庫中給出的)。
return 用於結束一個函數的執行,將函數的執行信息傳出個其他調用函數使用;exit 函數是退出應用程序,刪除進程使用的內存空間,並將應用程序的一個狀態返回給 OS (操作系統),這個狀態標識了應用程序的一些運行信息,這個信息和機器和操作系統有關,一般是 0 為正常退出,非 0 為非正常退出。
非主函數中調用 return 和 exit 效果很明顯,但是在 main 函數中調用 return 和 exit 的現象就很模糊,多數情況下現象都是一致的。
四.猜你喜歡
- C 語言 數組下標越界和內存溢出區別
- C 語言 使用指針遍歷數組
- C 語言 指針和數組區別
- C 語言 指針數組和數組指針區別
- C 語言 野指針
- C 語言 函數值傳遞和址傳遞
- C 語言 函數不定長參數
- C 語言 函數指針
- C 語言 指針函數
- C 語言 回調函數 callback
- C 語言 #pragma once
- C 語言 #include <> 與 #include “” 區別
- C 語言 const 修飾函數參數
- C 語言 const 和 define 區別
- C 語言 #運算符
- C 語言 ##運算符
- C 語言 __VA_ARGS__
- C 語言 ##__VA_ARGS__
- C 語言 函數不定長參數 ##__VA_ARGS__經典案例
- C 語言 va_start 宏
- C 語言 va_end 宏
- C 語言 va_arg 宏
- C 語言 vprintf 函數
- C 語言 va_start / va_end / va_arg 自定義 printf 函數
- C 語言 main 函數
- C 語言 main 函數參數 main(int argc, char *argv[])
- C 語言 exit 函數
未經允許不得轉載:猿說編程 » C 語言 exit 函數
本文由博客 - 猿說編程 猿說編程 發布!