for - Schleife



  • Ich habe folgende for - Schleife:

    uint32_t val(42);
    for (uint32_t mask(0x7FF), uint32_t test(0x80); val & test; test << 5, mask = ((mask << 5) | 0x1F))
    {
    
    }
    

    und mein g++ meldet mir

    main.cpp:27: Fehler: expected initializer before »test«
    main.cpp:27: Fehler: »test« wurde in diesem Gültigkeitsbereich nicht definiert
    

    (Zeile 27 beginnt mit dem for)

    Ich sehe da jetzt keinen Fehler (der uint32_t ist C99, aber beim g++ vorhanden und sonst per typedef schnell hinzufügbar 😉 )

    EDIT://

    uint32_t val(42); 
    for (uint32_t mask(0x7FF), test(0x80); val & test; test = test << 5, mask = ((mask << 5) | 0x1F)) 
    { 
    
    }
    

    Macht was es soll 😉



  • T a, T b; ist einfach keine gültige Deklarationssyntax.


Anmelden zum Antworten