Makro Ausgabe



  • Hi! Ich stehe grad ein bisschen auf der Leitung deswegen lege ich einfach mal los:

    Ich habe das Hauptprogramm:

    int main()
    {
    LOG("Programm gestartet.");
    
    for(int i = 0; i < 3; i++) 
    {
    LOG("Schleifendurchlauf.");
    }
    
    LOG("Programmende.");
    
    return 0;
    }
    

    und das Makro soll dazu führen, dass

    myProgram.c (3): Programm gestartet.
    myProgram.c (6): Schleifendurchlauf.
    myProgram.c (6): Schleifendurchlauf.
    myProgram.c (6): Schleifendurchlauf.
    myProgram.c (9): Programmende.
    

    ausgegeben wird.

    Wie ich Dateiname und die Zeile ausgebe krieg ich hin, aber wie schaffe ich es das der Text nach Log, also in dem Fall z.B. ("Programmende.) auch ausgegeben wird?

    mein Makro für Log sieht bisher so aus:

    #define LOG printf("%i", __LINE__); \
    	        printf("%s", __FILE__);
    

    Ich hoffe meine Frage ist verständlich, vielen Dank schon einmal im Voraus 🙂 🙂



  • Indem du das Makro mit Parameter definierst.
    Seit C99 funktioniert da auch die Elipse (...) (Variable Anzahl von Argumenten)

    Du darfst beim printf auch mehrere Parameter angeben.

    Dein Einrückungsstil ist grauenhaft.



  • DirkB schrieb:

    Dein Einrückungsstil ist grauenhaft.

    Welcher Einrückungsstil? 😉


Log in to reply