Glut和stdlib.h库冲突

    在使用glut写OpenGL程序的时候,在头文件中包含了glut.h和stdlib.h,编译时出现如下的错误(Visual Studio 2008中编译):
1>c:\program files\microsoft visual studio 9.0\vc\include\stdlib.h(371) : error C2381: 'exit' : redefinition; __declspec(noreturn) differs
1>        c:\program files\microsoft visual studio 9.0\vc\include\gl\glut.h(146) : see declaration of 'exit'
1>c:\program files\microsoft visual studio 9.0\vc\include\stdlib.h(371) : warning C4985: 'exit': attributes not present on previous declaration.
1>        c:\program files\microsoft visual studio 9.0\vc\include\gl\glut.h(146) : see declaration of 'exit'

    上网查了一下,可能是glut.h中重定义了exti和stdlib.h中的exit定义发生了冲突,解决的办法是 把stdlib.h放在glut.h头文件之前。即按下面这种形式去写:
#include<stdlib.h>
#include<gl/glut.h>

你可能感兴趣的:(职场,休闲,glut和stdlib冲突)