opengl中关于C2381的问题网上已经有很多的解决方法了。
其实我是个新手,之前用的是2012的uodate3.在提示我更新的时候我更新了、update4,在这之后我以前写的程序在运行的时候都出先了
c2012\vc\include\stdlib.h(360): error C2381: “exit”: 重定义;__declspec(noreturn) 不同
d:\vc2012\vc\include\glut.h(146) : 参见“exit”的声明
这个问题。我按照网上的各种方法都尝试了,还是不行。网上给出的很多一般方法都是把#include<stdlib.h>放在#include<glut.h>前面,这个问题就解决了。而我就纳闷了,作为新手,之前写程序的时候都要用到什么库,就写什么库,一般都不会刻意的写#include<stdlib.h>,也是可以正常运行调试的,可现在我没写,那网上的方法我就不能用了啊。于是继续搜索相关问题,看到国外网站有写这个,说是讲stdlib.h中的“exit”函数复制到glut.h中去,这个问题就解决了(不过我没有尝试)。最后在我原来写的程序前面加上了#include<stdlib.h>之后编译通过了。
我不知道这是为什么,之前同样在写的时候没有加这个依然能够顺利编译通过,可是在更新了update4之后就不行了,到目前还是不懂,会继续关注更近这个问题,希望知道的大牛们能帮小弟解除这个疑惑