Wer kennt graphics.h als C-Bibliothek???

T

Thomas_xp

Aktives Mitglied
Thread Starter
Dabei seit
05.04.2006
Beiträge
632
Reaktionspunkte
13
Weiß einer hier wie ich folgende Datei compiliere??? Problem schein die graphics.h zu sein. Wie binde ich die beim Compilieren ein???


#include <stdio.h>
#include <math.h>
#include <stdlib.h>
#include <graphics.h>

/*---------- Makros fuer die Symbole der Produktionsregeln ---------------*/
#define F f(t-1); /* F */
#define M phi=phi-delta; /* - */
#define P phi=phi+delta; /* + */
#define A_ altx=x; alty=y; altphi=phi; /* [ */
#define _Z x=altx,y=alty,moveto((int)x,(int)y); phi=altphi; /* ] */

double x, y, laenge, phi, delta; /* Globale Variablen */

void f(int t);
/*---------- main -------------------------------------------------------*/
int main( int argc, char *argv[] )
{
const double PI=4*atan(1);
int t, maxX=480, maxY=480;
int anfWinkel = 90; /* Winkel zum Zeichnen der ersten Gerade */
double drehWinkel = 22.5; /* Drehwinkel */
double faktor = 0.5; /* Verkleinerungsfaktor fuer Laenge bei Rekursion */
int rekTiefe = 7; /* Rekursionstiefe */

delta = (drehWinkel*PI)/180; /*---- Umrechnen Winkel in Bogenmass */
laenge = maxY/4;
initgraph(maxX, maxY);
for (t=1; t <= rekTiefe; t++) {
cleardevice(WHITE);
phi = (anfWinkel*PI)/180; /*---- Umrechnen Winkel in Bogenmass */
x = maxX/2;
y = maxY;
moveto( (int)x, (int)y );
f(t);
laenge *= faktor;
getch();
}
closegraph();
return 0;
}
/*---------- f ----------------------------------------------------------*/
void f(int t) {
double altx, alty, altphi;

if (t > 1) {
F F M A_ M F P F P F _Z P A_ P F M F M F _Z
} else {
x += laenge*cos(-phi);
y += laenge*sin(-phi);
lineto( (int)x, (int)y );
}
}


Im Terminal wird folgende Meldung gepostet:

MacBook:~/programming Name$ gcc pflanze1.c -ls -lm -lg
pflanze1.c:4:23: error: graphics.h: No such file or directory
pflanze1.c: In function 'main':
pflanze1.c:30: error: 'WHITE' undeclared (first use in this function)
pflanze1.c:30: error: (Each undeclared identifier is reported only once
pflanze1.c:30: error: for each function it appears in.)
Kristina-MacBook:~/programming Kika$
 
ok. Sorry nochmal für vorhin below. War nicht böse gemeint. Wie binde ich den eine solche .h ein? Ich meine jetzt nicht in die C-Datei. Ich meine wie muss ich die im Terminal zusammen kompillieren? Die graphics.h hab ich.
 
Wieso nicht mit der Materia auseinandersetzen? ICh muss doch nur wissen, wie es zu der Graphikerzeugung kommt. Und bisher waren die Links nicht so toll. Und einfach irgendwoher Code kopieren mach ich nicht.
 
Eigene Header würde ich
Code:
#include "mein_header.h"
einbinden
 
Und bisher waren die Links nicht so toll.

Im ersten Google Link (in meinem Post oben) findest Du die Antwort auf Deine Frage:

"graphics.h is a very old library for doing graphics in DOS with Borland C++ 3.x."
 
Danke für eure Links. Weiter bin ich leider immer noch nicht. Nachdem ich mich weiter eingelesen habe, habe ich versucht eine Installationsanleitung zu folgen und die libiary zu installieren, was aber nicht funktioniert hat.

Ich habe die graphics.h und graphics.cpp. Kann mir einer von euch erklären wie ich damit und eine beliebigen C-Datei, die etwas zeichen soll, zum Ziel komme? Erklären für doofe wenns geht, weil ich anscheinend noch nicht so weit bin.

Außerdem ist in dem Link zwar erklärt, was es damit auf sich hat, aber nicht wie ich aus den 3 Dateien (.h , .c und .cpp) ein Zusammenhängendes Programm mache, das mir was zeichnet...

UND die Frage drängt sich auf, wenn dies graphics-h schon so alt ist, wird sie heut zu tage noch eingesetzt und wenn nein, was nutzt man stattdessen? Und was nutzt man auf dem Mac?? Cocoa?
 
Zuletzt bearbeitet:
Ich habe die graphics.h und graphics.cpp. Kann mir einer von euch erklären wie ich damit und eine beliebigen C-Datei, die etwas zeichen soll, zum Ziel komme? Erklären für doofe wenns geht, weil ich anscheinend noch nicht so weit bin.

Mh scheinbar hast du es immernoch nicht so ganz verstanden.
Um mit C auch nur igendetwas auf den Bildschirm zu zaubern
brauchst du eine Graphic Bibliothek die von tieferen Betriebs-
systemfunktionen abstrahiert. Zum Beispiel OpenGL. Einen Link
mit Schritt fuer Schritt Anleitung hast du in deinem anderen
Thread erhalten. Eine "graphics.h" Datei allein nuetzt dir nix, das sind
nur Funktionsprototypen zum linken gegen die jeweilige Bibliothek.
 
Zurück
Oben Unten