为什么vc++6.0 不能引入glut.h这个头文件
#include<windows.h>#include<iostream>#include<process.h>//exit(0)包含在这个头文件中#include<fs...
#include <windows.h>
#include <iostream>
#include <process.h> //exit(0)包含在这个头文件中
#include <fstream>
#include <string>
#include <GL/glut.h>
#include <math.h> //sqrt函数包含在这个头文件中
using namespace std;
struct Data //定义点坐标的结构体
{
char fv;
double x,y,z;
}data[5000];
int count=0;
FILE *fp; //文件指针
//主函数
int main(int argc,char **argv)
{
//读取文件
if((fp=fopen("d:\\yanyi\\dshuju\\cow1.obj","r"))==NULL)
{
cout<<"open file error!!!"<<endl;
exit(0);
}
/ while(!feof(fp))
{
fscanf(fp,"%c%lf%lf%lf\n",&data[count].fv,&data[count].x,&data[count].y,&data[count].z);
count++;
cout<<data[count].fv<<" "<<data[count].x<<" "<<data[count].y<<" "<<data[count].z<<endl;
}
fclose(fp);
return 0;
}
注意:cow1.obj文件的结构是
v 0.151632 -0.043319 -0.08824
v 0.163424 -0.033934 -0.08411
v 0.163118 -0.053632 -0.080509
v 0.193459 -0.039143 -0.053249
v -0.45965 -0.080048 -0.026981
v -0.477615 -0.112885 -0.027535
v -0.475378 -0.131219 -0.018491
v -0.485115 -0.146574 -0.004132
v -0.496861 -0.151519 0.001731
v -0.434551 -0.032299 -0.003589
f 1 2 3
f 2 4 5
f 5 4 6
对于#include <GL/glut.h>
是因为最后想用openGL实现显示,昨天在自己的电脑还可以引用,几天换了个电脑就老提示找不到GL/glut.h文件,我查了很多资料,配置也查了,没问题,不知道什么原因。
故来求助!!!
谢谢,谢谢 展开
#include <iostream>
#include <process.h> //exit(0)包含在这个头文件中
#include <fstream>
#include <string>
#include <GL/glut.h>
#include <math.h> //sqrt函数包含在这个头文件中
using namespace std;
struct Data //定义点坐标的结构体
{
char fv;
double x,y,z;
}data[5000];
int count=0;
FILE *fp; //文件指针
//主函数
int main(int argc,char **argv)
{
//读取文件
if((fp=fopen("d:\\yanyi\\dshuju\\cow1.obj","r"))==NULL)
{
cout<<"open file error!!!"<<endl;
exit(0);
}
/ while(!feof(fp))
{
fscanf(fp,"%c%lf%lf%lf\n",&data[count].fv,&data[count].x,&data[count].y,&data[count].z);
count++;
cout<<data[count].fv<<" "<<data[count].x<<" "<<data[count].y<<" "<<data[count].z<<endl;
}
fclose(fp);
return 0;
}
注意:cow1.obj文件的结构是
v 0.151632 -0.043319 -0.08824
v 0.163424 -0.033934 -0.08411
v 0.163118 -0.053632 -0.080509
v 0.193459 -0.039143 -0.053249
v -0.45965 -0.080048 -0.026981
v -0.477615 -0.112885 -0.027535
v -0.475378 -0.131219 -0.018491
v -0.485115 -0.146574 -0.004132
v -0.496861 -0.151519 0.001731
v -0.434551 -0.032299 -0.003589
f 1 2 3
f 2 4 5
f 5 4 6
对于#include <GL/glut.h>
是因为最后想用openGL实现显示,昨天在自己的电脑还可以引用,几天换了个电脑就老提示找不到GL/glut.h文件,我查了很多资料,配置也查了,没问题,不知道什么原因。
故来求助!!!
谢谢,谢谢 展开
3个回答
2011-03-23
展开全部
1 vc没有glut头文件和链接库
2 所以你要添加glut头文件和链接库
3 可以在vc的include目录下新建一个文件夹 文件名GL
把glut.h放进去 你就可以在你的代码里写 #include <GL/glut.h>了
这样编译会通过 但链接会报错
把glut.lib和glut32.lib放到vc的lib目录下
在代码中加上下面两句
#pragma comment(lib,"glut.lib")
#pragma comment(lib,"glut32.lib")
链接就不会错了
把glut.dll和glut32.dll放到windows系统目录下
运行就不会错了
简单解释下
有了头文件vc就知道(认识)代码中的glut函数
所以编译不报错
有了.lib文件vc就知道这些函数是存在的
所以链接不报错
有了.dll文件你的应用程序就能找到真正的glut函数代码
所以运行不出错
总结下
其他库也类似
其他平台也类似
2 所以你要添加glut头文件和链接库
3 可以在vc的include目录下新建一个文件夹 文件名GL
把glut.h放进去 你就可以在你的代码里写 #include <GL/glut.h>了
这样编译会通过 但链接会报错
把glut.lib和glut32.lib放到vc的lib目录下
在代码中加上下面两句
#pragma comment(lib,"glut.lib")
#pragma comment(lib,"glut32.lib")
链接就不会错了
把glut.dll和glut32.dll放到windows系统目录下
运行就不会错了
简单解释下
有了头文件vc就知道(认识)代码中的glut函数
所以编译不报错
有了.lib文件vc就知道这些函数是存在的
所以链接不报错
有了.dll文件你的应用程序就能找到真正的glut函数代码
所以运行不出错
总结下
其他库也类似
其他平台也类似
展开全部
你是不是想写 GLU.H, 多写了一个 T?
vc++6.0 有 OpenGL 的东西。有头文件 GL.H, GLAUX.H, GLU.H
但没有 GLUT 软件包/工具包 (OpenGL Utility Toolkit) 的东西: glut.h,glut32.dll,glut32.lib
GLUT 软件包/工具包 是不收费的,你可以在网上找到。它不属于vc++6.0。
vc++6.0 有 OpenGL 的东西。有头文件 GL.H, GLAUX.H, GLU.H
但没有 GLUT 软件包/工具包 (OpenGL Utility Toolkit) 的东西: glut.h,glut32.dll,glut32.lib
GLUT 软件包/工具包 是不收费的,你可以在网上找到。它不属于vc++6.0。
追问
没写错,我的电脑都可以用,就是办公室的不可以。我之前做毕设的时候一直都用glut.h这个文件的,虽然GLUT不属于vc++6.0,但是应该是兼容的。有可能是办公室的机子有问题吧!
还有楼下的,你说的那些设置我都设置了,不是这方面的问题,现在是程序在我的电脑上完全没问题,在办公室的就不行,我估计是办公室的vc++不行,我试着重装下试试。谢谢了
追答
GLUT 必须另装。它是C语言编写的库程序。网上有现成的编译好的文件,你下下来就能用。
vc++6.0 是微软产品,它不含GLUT软件包。
你的电脑可以用,说明你或你机器上的某软件安装了它。不说明你办公室的电脑必须可以用。
我的GLUT是我自己编译和安装的。装好后,看上去就像vc++6.0的一部分。
GLUT 作者是 Mark J. Kilgard, SGI 公司的人。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询