名前空間
変種
操作

abort

提供: cppreference.com
< c‎ | program
ヘッダ <stdlib.h> で定義
void abort(void);
(C11未満)
_Noreturn void abort(void);
(C11以上)

signal に渡されたシグナルハンドラによって SIGABRT がキャッチされそのハンドラが戻らない場合を除き、プログラムを異常終了させます。

atexit() に渡された関数は呼ばれません。 ファイルのような開いているリソースが閉じられるかどうかは処理系定義です。 実行の失敗を表す処理系定義のステータスがホスト環境に返されます。

目次

[編集]引数

(なし)

[編集]戻り値

(なし)

[編集]ノート

POSIX は abort() 関数が SIGABRT シグナルのブロックおよび無視をオーバーライドすると 規定しています

[編集]

#include <stdio.h>#include <stdlib.h>   int main(void){FILE*fp =fopen("data.txt","r");if(fp ==NULL){fprintf(stderr, "error opening file data.txt in function main()\n"); abort();}   /* Normal processing continues here. */fclose(fp);printf("Normal Return\n");return0;}

出力:

error opening file data.txt in function main()

[編集]参考文献

  • C11 standard (ISO/IEC 9899:2011):
  • 7.22.4.1 The abort function (p: 350)
  • C99 standard (ISO/IEC 9899:1999):
  • 7.20.4.1 The abort function (p: 315)
  • C89/C90 standard (ISO/IEC 9899:1990):
  • 4.10.4.1 The abort function

[編集]関連項目

クリーンアップをしてプログラムを正常終了させます
(関数)[edit]
exit() が行われた時に呼ばれる関数を登録します
(関数)[edit]
完全なクリーンアップをせずにプログラムを正常終了させます
(関数)[edit]
close