printf erweitern für eigene Datentypen



  • Moinmoin,

    ich würd gern die printf erweitern, damit man auch eigene Datentypen ausgeben kann: z.B.

    typedef struct NAME
    {
       CString Vorname;
       CString Nachname;
    } name;
    name.Vorname = "Harald";
    name.Nachname = "Weber";
    
    myprintf("Vorname=%V Nachname=%N", name, name);
    

    irgendwie so hab ich angefangen:

    int myprintf(char* pcFormat, ...)
    {
    
    }
    

    und jetzt häng ich fest... 😮



  • Hallo

    Das geht nur indem du selber den String parst und nach deinen Symbolen suchst.

    Verwendet lieber std::streams und überlade den Operator << für dein struct.

    bis bald
    akari



  • Da NAME kein POD mehr ist, wirst Du sowieso spätestens bei der Übergabe eines NAME über die Ellipse scheitern. Mach was akari vorgeschlagen hat, Streams haben dieses Problem nicht (neben vielen anderen).


Anmelden zum Antworten