Variable Anzahl von Funktions- Übergabeparametern



  • Hi,
    existiert eine Möglichkeit, eine Funktion zu definieren,
    bei der die Übergabeparameter Variabel sind?

    Also so
    Max Übergabeparameter
    meineFunktion( Para1, Para2, Para3, Para4, ..., Para8 );

    oder in einem anderen Fall so
    meineFunktion( Para1, Para2)

    Eigentlich sollte sowas gehen, weil bei sprintf z.B. gehts ja auch??

    Aber wie stellt man sowas an??

    lg
    anymo



  • schau dir mal vsprinf an....

    aus der msdn:

    // crt_vsnprintf.c
    #include <stdarg.h>
    #include <wtypes.h>
    
    void VarArg(LPCSTR formatstring, ...) 
    {
       int nSize = 0;
       char buff[255];
       va_list args;
       va_start(args, formatstring);
    
       nSize = _vsnprintf( buff, sizeof(buff), formatstring, args);
    }
    
    int main() {
       VarArg("%s World", "Hello");
    }
    


  • ein

    va_end
    

    kann nie schaden.

    schau dir dieses Beispiel an, um zu sehen wie man mit einer va_list hantiert:

    http://cppreference.com/stdother/va_arg.html



  • Danke,...
    damit kann ich mal arbeiten,...

    Bis demnächst,
    lg
    anymo


Log in to reply