Was bedeutet Fehler?
-
#include <graphics.h> #include <iostream.h> #include <stdlib.h> #include <string.h> #include <stdio.h> #include <conio.h> #include <comm.h> #include <dos.h> int y1,y2, xb,yb, xb_dir=1,yb_dir=1, del=10, lvl=4, mode, ast=0, ric,ric1; int xb1,yb1, xb_dir1,yb_dir1, twoball=0, score1=0,score2=0,scoremax=5; long k=1; void drawball(int i,int j,int c1,int c2); void drawbrick1(int i,int c); void drawbrick2(int i,int c); void drawborder(); void graphinit(); void display(); void start(); void menu(); void move(); void ai1(); void ai2(); void win(); int main() { menu(); start(); move(); return 0; } void graphinit() { int driver=DETECT,mode; initgraph(&driver,&mode,"C:\BC31\bgi"); } void menu() { char opt; _setcursortype(_NOCURSOR); st: clrscr(); gotoxy(31,5); textcolor(9); cprintf("P I N G - P O N G"); gotoxy(33,9); textcolor(12); cprintf("S"); gotoxy(34,9); textcolor(10); cprintf("ingle Player"); gotoxy(34,12); textcolor(12); cprintf("M"); gotoxy(35,12); textcolor(10); cprintf("ultiplayer"); gotoxy(32,18); textcolor(12); cprintf("G"); gotoxy(33,18); textcolor(10); cprintf("ame speed: %d",del); gotoxy(37,24); textcolor(12); cprintf("Q"); gotoxy(38,24); textcolor(10); cprintf("uit"); for( ; ; ) { opt=getch(); if(opt=='G'||opt=='g') { del++; if(del==21) del=3; goto st; } if(opt=='Q'||opt=='q') { clrscr(); cout<<" Bye!"; delay(500); exit(0); } if(opt=='s'||opt=='S') { mode=1; return; } if(opt=='m'||opt=='M') { mode=2; return; } } } void start() { int j; randomize(); j=random(100); yb_dir=-1; yb_dir1=1; if(j%2==0) { xb_dir=1; xb_dir1=-1; } else { xb_dir=-1; xb_dir1=1; } graphinit(); drawborder(); xb=320; yb=400; xb1=320; yb1=80; y1=y2=200; drawbrick1(y1,2); drawbrick2(y2,2); drawball(xb,yb,4,1); } void drawborder() { setcolor(1); rectangle(5,4,635,476); } void drawbrick1(int i,int c) { int brick1[10]={634,i,634,i+100,611,i+100,611,i,634,i}; setcolor(c); setfillstyle(7,c); fillpoly(4,brick1); } void drawbrick2(int i,int c) { int brick2[10]={6,i,28,i,28,i+100,6,i+100,6,i}; setcolor(c); setfillstyle(8,c); fillpoly(4,brick2); } void win() { if((xb<24&&xb_dir==-1&&xb>15)&&!ric) { score1++; ric=1; if(scoremax) if(score1==scoremax) { gotoxy(33,15); cout<<"Player 1 wins!"; delay(2000); exit(0); } } if((xb>611&&xb_dir==1&&xb<616)&&!ric) { score2++; ric=1; if(scoremax) if(score2==scoremax) { gotoxy(33,15); cout<<"Player 2 wins!"; delay(2000); exit(0); } } if((xb1<24&&xb_dir1==-1&&xb>15)&&!ric1) { score1++; ric1=1; if(scoremax) if(score1==scoremax) { gotoxy(33,15); cout<<"Player 1 wins!"; delay(2000); exit(0); } } if((xb1>611&&xb_dir1==1&&xb1<616)&&!ric1) { score2++; ric1=1; if(scoremax) if(score2==scoremax) { gotoxy(33,15); cout<<"Player 2 wins!"; delay(2000); exit(0); } } } void move() { char a; while(a!=ESC) { a=0; if(kbhit()) { a=getch(); if(a==UP&&y1>15) { drawbrick1(y1+1,0); y1-=10; drawbrick1(y1,2); } if(a==DOWN&&y1<365) { drawbrick1(y1,0); y1+=10; drawbrick1(y1,2); } if(mode==2) { if(a=='w'&&y2>15) { drawbrick2(y2+1,0); y2-=10; drawbrick2(y2,2); } if(a=='s'&&y2<365) { drawbrick2(y2,0); y2+=10; drawbrick2(y2,2); } } } drawball(xb,yb,0,0); if(twoball) drawball(xb1,yb1,0,0); xb+=xb_dir*5; yb+=yb_dir*3; if(twoball) { xb1+=xb_dir1*4; yb1+=yb_dir1*2; } drawball(xb,yb,4,1); if(twoball) drawball(xb1,yb1,14,9); win(); if(k%lvl==0) if(mode!=2) ai1(); if(ast) if(k%ast==0) ai2(); k++; if(ric) ric++; if(ric>110) ric=0; if(ric1) ric1++; if(ric1>110) ric1=0; delay(del); if(yb>462||yb<18) { sound(1500); delay(1); nosound(); yb_dir*=-1; } if(xb>619||xb<21||(xb==40&&(yb-y2<100&&yb-y2>0))|| (xb==600&&(yb-y1<100&&yb-y1>0))) { xb_dir*=-1; } } } void ai1() { if(yb>y2+25&&xb<320&&xb_dir==-1&&y2<365) { drawbrick2(y2,0); y2+=10; drawbrick2(y2,2); } if(yb<y2+25&&xb<320&&xb_dir==-1&&y2>15) { drawbrick2(y2+1,0); y2-=10; drawbrick2(y2,2); } if(xb_dir==1) { if(y2+50>240) { drawbrick2(y2+1,0); y2-=10; drawbrick2(y2,2); } if((y2+50)<23); { drawbrick2(y2,0); y2+=10; drawbrick2(y2,2); } } } void ai2() { if(yb>y1+50 && xb>320 && xb_dir==1&&y1<365) { drawbrick1(y1,0); y1+=10; drawbrick1(y1,2); } if(yb<y1+50 && xb>320 && xb_dir==1&&y1>15) { drawbrick1(y1+1,0); y1-=10; drawbrick1(y1,2); } } ;
**Folgender Error:
Linker Error: Undefined symbol drawball(int,int,int,int) in module**
Was bedeutet der Error und wie kann ihn beheben?
Danke im vorraus
mfg Mike
-
Schneida_M schrieb:
Folgender Error:
Linker Error: Undefined symbol drawball(int,int,int,int) in moduleWas bedeutet der Error und wie kann ihn beheben?
Es bedeutet das du
void drawball(int i,int j,int c1,int c2);
nicht definiert hast
...
du brauchst im Code etwas in der richtung:
void drawball(int i,int j,int c1,int c2) { //... }
Aber mal ganz im Ernst... da hatte man auch selbst drauf kommen können...
-
Der Fehler ist ganz einfach, dass du die graphics.lib nicht miteingebunden hast.