请问这个c++程序错在哪里?想用glut绘出正五边形的程序:

#include<GL/glut.h>#include<math.h>voidmydisplay(){GLfloatr,x,y,theta;inti;theta=2*3.... #include<GL/glut.h>
#include<math.h>
void mydisplay(){
GLfloat r,x,y,theta;
int i;
theta=2*3.14159265359 / 5;
glClear(GL_COLOR_BUFFER_BIT);
r=0.5;
glBegin(GL_POLYGON);
for(i=0;i<5;++i){
x=r*cos(theta*i);
y=r*sin(theta*i);
glVertex2f(y,x);
glEnd();
glutSwapBuffers();
}
void main(int argc,char** argv);
{
glutInitDisplayMode(GLUT_RGB | GLUT_DOUBLE | GLUT_DEPTH);
glutCreateWindow("simple");
glutDisplayFunc(mydisplay);
glutIdleFunc(mydisplay);
glutMainLoop();
}
}
展开
 我来答
金色潜鸟
2012-10-08 · TA获得超过3.2万个赞
知道大有可为答主
回答量:1.3万
采纳率:89%
帮助的人:5501万
展开全部
// #include "glut.h" 我的头文件在当前文件夹,注意 你的在哪里。
#include<GL/glut.h>
#include<math.h>

void mydisplay(){
GLfloat r,x,y,theta;
int i;
theta=2*3.14159265359 / 5;
glClear(GL_COLOR_BUFFER_BIT);
r=0.5;
glBegin(GL_POLYGON);
for(i=0;i<5;++i){
x=r*cos(theta*i);
y=r*sin(theta*i);
glVertex2f(y,x);
}; // 加上
glEnd();
glutSwapBuffers();
}

void main(int argc,char **argv) //去掉分号
{
glutInitDisplayMode(GLUT_RGB | GLUT_DOUBLE | GLUT_DEPTH);
glutCreateWindow("simple");
glutDisplayFunc(mydisplay);
glutIdleFunc(mydisplay);
glutMainLoop();
// 你这里多了一个花括号
}

好了,黑白的五边形出来了。
liuxinling_06
2012-10-08 · TA获得超过1289个赞
知道小有建树答主
回答量:345
采纳率:100%
帮助的人:418万
展开全部
在main里面先调用 glutInit 试试
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友26ad406
2012-10-07 · TA获得超过1611个赞
知道大有可为答主
回答量:1506
采纳率:100%
帮助的人:1059万
展开全部
是画不出来还是编译不过 得先配置opengl库
追问
opengl库已经配置好了。编译过了画不出来
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式