Cプロセス制御

Cプロセス制御とは、 Cプログラミング言語標準ライブラリにある基本的なプロセス制御操作を実装する関数のグループを指します。 [ 1 ] [ 2 ]プロセス制御操作には、さまざまなレベルのクリーンアップによるプログラムの終了、外部コマンドインタープリタの実行、環境操作のリストへのアクセスなどのアクションが含まれます。

機能の概要

プロセス制御関数は、stdlib.hヘッダー ( cstdlibC++ では header ) で定義されます。

関数 説明
プログラム の終了abortプログラムの異常終了を引き起こす(クリーンアップなし)
exitクリーンアップを伴う通常のプログラム終了を引き起こします
_Exitクリーンアップせずにプログラムを正常終了させる(C99
atexitexit() 呼び出し時に呼び出される関数を登録します
quick_exitクリーンアップせずに通常のプログラムを終了させますが、IOバッファはフラッシュされます(C11
at_quick_exitquick_exit() 呼び出し時に呼び出される関数を登録します
環境 とのコミュニケーションgetenv環境変数のリストにアクセスする
systemホスト環境のコマンドプロセッサを呼び出す

以下は C でシステム環境と通信する例です。

#include <stdio.h> #include <stdlib.h>int main () { char * path = getenv ( "PATH" ); if ( ! path ) { fprintf ( stderr , "PATH環境変数が見つかりません。\n " ); } else { printf ( "PATH変数: %s \n " , path ); }printf ( "system( \" ls \" )を使用して現在のディレクトリの内容を一覧表示しています: \n " ); int ret = system ( "ls" );if ( ret == -1 ) { fprintf ( stderr , "system() 呼び出しが失敗しました!" ); }0を返す; }

参考文献

  1. ^クロフォード、トニー、ピーター・プリンツ(2005年12月)。C in a Nutshell §16.11 –プロセス制御:オライリー。618ページ。ISBN 0-596-00697-7{{cite book}}: CS1 メンテナンス: 場所 (リンク)
  2. ^ ISO/IEC 9899:1999 仕様(PDF) . p. 315, § 7.20.4「環境とのコミュニケーション」 . 2011年11月25日閲覧