Rechercher une page de manuel
atexit
Langue: ja
Version: 2003-11-01 (openSuse - 09/10/07)
Section: 3 (Bibliothèques de fonctions)
̾Á°
atexit - ¥×¥í¥»¥¹¤¬Àµ¾ï½ªÎ»¤·¤¿»þ¤Ë¸Æ¤Ó½Ð¤µ¤ì¤ë´Ø¿ô¤òÅÐÏ¿¤¹¤ë½ñ¼°
#include <stdlib.h> int atexit(void (*function)(void));
ÀâÌÀ
atexit() ´Ø¿ô¤Ï¡¢Í¿¤¨¤é¤ì¤¿ function ¤ò¡¢ exit(3) ¤ä¥×¥í¥°¥é¥à¤Î main() ´Ø¿ô¤«¤é¤ÎÊÖ¤ê¤òÄ̤¸¤Æ¡¢¥×¥í¥»¥¹¤¬Àµ¾ï½ªÎ»¤·¤¿»þ¤Ë¸Æ¤Ó½Ð¤µ¤ì¤ë ´Ø¿ô¤È¤·¤ÆÅÐÏ¿¤¹¤ë¡£ ¤³¤³¤ÇÄêµÁ¤µ¤ì¤¿´Ø¿ô¤Ï¡¢ÅÐÏ¿¤·¤¿½çÈ֤ȤϵդνçÈ֤ǸƤӽФµ¤ì¤ë¡£ ÅÐÏ¿¤·¤¿´Ø¿ô¤Ë°ú¤¿ô¤ÏÅϤµ¤ì¤Ê¤¤¡£POSIX.1-2001 ¤Ç¤Ï¡¢¤³¤Î¤è¤¦¤Ê´Ø¿ô¤ò¾¯¤Ê¤¯¤È¤â ATEXIT_MAX ¸Ä (32¸Ä) ÅÐÏ¿¤Ç¤¤ë ¤³¤È¤òÍ׵ᤷ¤Æ¤¤¤ë¡£¤½¤Î¼ÂÁõ¤Ç¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤ë¼ÂºÝ¤Î¾å¸Â¤Ï sysconf(3) ¤ò»È¤Ã¤Æ¼èÆÀ¤Ç¤¤ë¡£
fork(2) ¤ÇºîÀ®¤µ¤ì¤¿¾ì¹ç¡¢»Ò¥×¥í¥»¥¹¤Ï¿Æ¥×¥í¥»¥¹¤ÎÅÐÏ¿¤Î¥³¥Ô¡¼¤ò·Ñ¾µ¤¹¤ë¡£ exec(3) ¥Õ¥¡¥ß¥ê¡¼¤Î´Ø¿ô¤Î¤¤¤º¤ì¤«¤Î¸Æ¤Ó½Ð¤·¤ËÀ®¸ù¤¹¤ë¤È¡¢ Á´¤Æ¤ÎÅÐÏ¿¤¬ºï½ü¤µ¤ì¤ë¡£
ÊÖ¤êÃÍ
atexit() ´Ø¿ô¤Ï¡¢´Ø¿ôÅÐÏ¿¤¬À®¸ù¤·¤¿»þ¤Ë¤Ï 0 ¤òÊÖ¤¹¡£ ¤½¤Î¾¤Î¾ì¹ç¤Ë¤Ï 0 °Ê³°¤ÎÃͤòÊÖ¤¹¡£½àµò
SVr4, 4.3BSD, C89, C99, POSIX.1-2001.Ãí°Õ
atexit() (¤È on_exit(3)) ¤ò»È¤Ã¤ÆÅÐÏ¿¤µ¤ì¤¿´Ø¿ô¤Ï¡¢ ¥·¥°¥Ê¥ë¤ÎÇÛÁ÷¤Ë¤è¤ê¥×¥í¥»¥¹¤¬°Û¾ï½ªÎ»¤·¤¿¾ì¹ç¤Ë¤Ï¸Æ¤Ó½Ð¤µ¤ì¤Ê¤¤¡£Linux ¤Ç¤ÎÃí°Õ
glibc 2.2.3 °Ê¹ß¤Ç¤Ï¡¢¶¦Í¥é¥¤¥Ö¥é¥ê¤¬¥¢¥ó¥í¡¼¥É¤µ¤ì¤ë¤È¤¤Ë¸Æ¤Ð¤ì¤ë ´Ø¿ô¤òÅÐÏ¿¤¹¤ë¤¿¤á¤Ë¡¢¶¦Í¥é¥¤¥Ö¥é¥ê¤ÎÃæ¤Ç atexit() (¤È on_exit(3)) ¤ò»ÈÍѤ¹¤ë¤³¤È¤¬¤Ç¤¤ë¡£Îã
#include <stdio.h> #include <stdlib.h> #include <unistd.h> void bye(void) { printf("That was all, folks\n"); } int main(void) { long a; int i; a = sysconf(_SC_ATEXIT_MAX); printf("ATEXIT_MAX = %ld\n", a); i = atexit(bye); if (i != 0) { fprintf(stderr, "cannot set exit function\n"); return EXIT_FAILURE; } return EXIT_SUCCESS; }
´ØÏ¢¹àÌÜ
_exit(3), exit(3), on_exit(3)Contenus ©2006-2023 Benjamin Poulain
Design ©2006-2023 Maxime Vantorre