Pointer auf FUnktion



  • Hi,
    Vorneweg, ich habe die Such-Funktion benutzt, konnte mit den Ergebnissen jedoch nicht wirklich viel anfangen.
    Nun zu meinem Problem.
    Ich habe eine Funktion die ungefähr so aussieht:
    void bla(const char *, const char * , bool ,
    void(*Callack)(const char *, const char *, void * ), void * );

    Wie rufe ich diese Funktion aus meiner main funktion auf und wie behandel ich die Callback-funkion??



  • Original erstellt von chromos:
    **Ich habe eine Funktion die ungefähr so aussieht:
    void bla(const char , const char * , bool ,
    void(*Callack)(const char *, const char , void * ), void * );

    Ich kann keine Funktion erkennen. Ich sehe einen Prototyp für eine Funktion, die den Namen 'bla' hat, nichts ('void') zurückliefert und 5 Parameter erhält.

    Wie rufe ich diese Funktion aus meiner main funktion auf und wie behandel ich die Callback-funkion??

    bla(a, b, c, d, e);
    

    Eventuell dürfen die Zeiger Nullzeiger sein (das steht am Besten in der Dokumentation der Funktion 'bla'). Die »Callback-funkion« gibt es nicht, es gibt einen Zeiger auf eine Funktion (Bitte bei den Begrifflichkeiten aufpassen, sonst gibt das bald ein Durcheinander). Dieser Zeiger sollte normalerweise auf eine Funktion verweisen, die einen 'void' (ergo nichts) zurückliefert, und 3 Parameter bekommt; Typen dafür sind 'const char*', 'const char*' und 'void*' in dieser Reihenfolge. Ob auch 0 gültig ist, musst Du in der Funktionsbeschreibung nachlasen. Eine Funktion die einen Prototyp wie

    void foo(char const* a, char const* b, void* c);
    

    hat, wäre vermutlich als Parameter geeignet.



  • sorry, ich dachte es ist besser wenn ich nur den Kopf und nicht die komplette Funktion poste, die ist nämlich zu lang 🙂
    Trotzdem danke für die schnelle Antwort, genau der Stoß in die richtige Richtung 🙂

    [ Dieser Beitrag wurde am 16.05.2003 um 17:17 Uhr von chromos editiert. ]


Anmelden zum Antworten