Anzeige:
Ergebnis 1 bis 7 von 7

Thema: eigene Headerdateien erstellen

  1. #1
    Gast

    Question eigene Headerdateien erstellen

    Hallo zusammen,

    ich habe gestern schon wieder ein Problem entdeckt;-)) Wie geht das mit der Erstellung eigener Headerdateien vor sich?

    Ich bin wie folgt vorgegangen:

    Erstellung einer Datei "stefan.h" mit folgendem Inhalt:

    # include <stdio.h>

    # define CLS printf("\033[2J")

    danach in einer Datei

    ...

    # include <stefan.h>

    int main()
    {
    CLS;
    }

    das ganze kompaliert (ohne Fehlermeldungen) und dann gestartet. Leider läuft das Programm nicht. Was mache ich da falsch???

    Gruß und Danke

    Stefan

  2. #2
    TheJudger
    Gast

    Smile

    moin moin

    ich kann deinen Text zwar nicht vollkommen lesen,

    wahrscheinlich hast du aber
    #include < stefan.h >
    versucht ...

    es sollte mit
    #include"stefan.h"
    funktionieren ..


  3. #3
    Registrierter Benutzer
    Registriert seit
    19.10.1999
    Ort
    Dresden
    Beiträge
    255

    Post

    "Muss" ist nicht ganz korrekt. Denn eigene Headerdateien können durchaus in &lt;...&gt; angegeben werden. Allerdings muss i.A. dem Compiler dann explizit gesagt werden, wo er die Dateien zu suchen hat ("-L /include-Pfad").

    Bei Angabe von &lt;...&gt; sucht ein Compiler die Datei in Standardpfaden. Dies schließt das aktuelle Verzeichnis NICHT ein.

    Mit "..." sucht der Compiler die Datei ausgehend vom aktuellen Verzeichnis (bzw. wenn die Datei als absoluter Pfad angegeben wird, in diesem).

    Thomas

  4. #4
    Gast

    Post

    Hallo Tommy,

    dann ist aber doch folgende Tatsache komisch! Wenn ich als root die Datei nach

    /usr/include

    kopiere funktioniert das Programm trotzdem nicht! Und auch mit der kompletten Pfadangabe hat die Sache leider nicht funktionukkelt!

    Gruß

    Stefan

  5. #5
    Gast

    Question

    Sorry,

    ich vergaß html! Wieso muß man denn eigene Bibliotheken mit " einbinden???

    Stefan

  6. #6
    Registrierter Benutzer
    Registriert seit
    19.10.1999
    Ort
    Dresden
    Beiträge
    255

    Post

    Ein kleiner Fehler ist mir unterlaufen...

    Ausgangspunkt seien zwei Dateien "foo.c" und "foo.h".

    Bindest Du foo.h via
    <pre>
    #include &lt;foo.h&gt;
    </pre>
    ein, so lautet den Compileraufruf:
    <pre>
    gcc foo.c -I./
    </pre>

    Du teilst dem Compiler also mit, dass er im aktuelle Pfad ebenso nach includes Ausschau hält (im vorherigen Posting hatte ich versehentlich "-L" geschrieben, diese Angabe betrifft aber den Bibliothekspfad)

    Die Angabe von "-I./" kann entfallen, wenn "foo.h" in einem Standardpfad liegt (bspw. in /usr/include). Wenn das bei Dir nicht geht, ist etwas anderes faul.

    Thomas

  7. #7
    Gast

    Post

    Hi,

    wie ich sagte, bei mir klappt das auch nicht wenn ich die Datei in den Standartpfad kopiere. Und das für mich komischte überhaupt ist, daß der Compiler keinerlei Fehlermeldungen verursacht! Hast Du also noch ne andere Idee an was das liegen könnte? In meinem Programm müßte eigentlich nach dem Löschen des Screens einfach eine Meldung "Hallo Welt" oder so ausgegeben werden, aber es passiert gar nix! Oder muß ich vielleicht nach dem "Säubern" auch den Cursor neu positionieren???

    Stefan

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •