atexit_test.c
上传用户:xk288cn
上传日期:2007-05-28
资源大小:4876k
文件大小:1k
源码类别:

GIS编程

开发平台:

Visual C++

  1. /* Copyright (c) Mark J. Kilgard, 1998. */
  2. /* This program is freely distributable without licensing fees 
  3.    and is provided without guarantee or warrantee expressed or 
  4.    implied. This program is -not- in the public domain. */
  5. /* When you quite a GLUT program, the atexit callbacks should
  6.    always be called.  In GLUT 3.6 and earlier, this was not happening.
  7.    It should be fixed in GLUT 3.7. */
  8. #include <stdlib.h>
  9. #include <stdio.h>
  10. #include <GL/glut.h>
  11. void
  12. display(void)
  13. {
  14.   glClear(GL_COLOR_BUFFER_BIT);
  15.   glFlush();
  16. }
  17. void
  18. exitHappened(void)
  19. {
  20.   printf("PASS: atexit testn");
  21. }
  22. int
  23. main(int argc, char **argv)
  24. {
  25.   atexit(exitHappened);
  26.   glutInitWindowSize(400, 100);
  27.   glutInit(&argc, argv);
  28.   glutCreateWindow("at exit test (quit via window border)");
  29.   glutDisplayFunc(display);
  30.   printf("nIf you quite via the window manager you should seen"
  31.     "a message with the word pass capitalized.nn");
  32.   glutMainLoop();
  33.   return 0;             /* ANSI C requires main to return int. */
  34. }