程序退出 exit 和 exit

2021-09-25 08:35:30 字數 713 閱讀 5009

void exit(int value)

是標準庫函式,在標頭檔案 stdlib.h 中定義。具有重新整理 i/o 緩衝區的作用。他的引數 value 是返回給父程序的資料(低 8 位有效)。

void _exit(int value)

是系統呼叫函式,在標頭檔案 unistd.h 中定義。沒有重新整理 i/o 緩衝區的作用。他的引數 value 也是返回給父程序的資料(低 8 位有效)。

#include #include #include int main(int argc, char *ar**)

[lingyun@manjaro study]$ gcc study.c 

[lingyun@manjaro study]$ ./a.out

[lingyun@manjaro study]$

可見沒有任何輸出,因為 i/o 緩衝區沒有被重新整理。如果把 _exit(0)注釋掉,解注釋 exit(0) 的話就會有輸出,因為 exit() 有重新整理 i/o 緩衝區的作用。如下:

[lingyun@manjaro study]$ gcc study.c 

[lingyun@manjaro study]$ ./a.out

heeeeeeeeeeello woooooooooooooorld![lingyun@manjaro study]$

程序篇 exit 與 exit 退出程序

exit exit include void exit int status 參 數status,程式退出的返回值 include void exit int status exit 與 exit 區別 exit 則在這些基礎上作了一些包裝,在執行退出之前加了若干道工序。exit 屬於標準庫函式 e...

Linux 之exit 程序退出函式

標頭檔案 include include 原型 void exit int status void exit int status exit os立刻把管理記憶體的結構體 虛擬記憶體釋放掉。exit 不會馬上乾掉結構體,先看先看當前程序有沒有檔案快取區,若有則會先處理快取區中的資料,然後銷毀結構體。...

C 退出函式exit

exit為c 的退出函式,宣告於stdlib.h中,對於c 其標準的標頭檔案為cstdlib,宣告為 void exit int value exit的功能為,退出當前執行的程式,並將引數value返回給主調程序。在main中return v 的效果 與exit v 相同。overflow為math...