Durchzaehlen eines enums



  • Hi Leute,
    ich bin grad dabei Options aus einem .ini File einzulesen und zu ueberpruefen.
    Jetzt hab ich 2 Funktionen die als Parameter einen Enum Wert erwarten:

    if( (pCurSection = IsOptionSet(pIniList, SCROLLING_TEXT)) != NULL)
    	{
    		if(SetOptionValue(pCurSection, SCROLLING_TEXT, pSettings))
    

    (jeweils 2ter Parameter). In diesem Enum sind 9 Werte definiert.
    Frage: Wie stell ich des jetzt an, damit ich nicht 9mal das gleiche wie oben schreiben muss, sonder iwie mit einer schleife loesen kann?!

    2te Frage:
    Ich hab jetzt ein Option struct:

    typedef struct Setting_LCD_
    {
    	SCROLLING_TEXT ScollText;
    	LCD_LINE_TEXT LineText
    	THUNDERBIRD_HOOK TBHook;
    	LCD_TIME LcdTime;
    	BATTERY_STATE BatteryState;
    	BATTERY_STATE SignalStrength;
    	CPU_USAGE CpuUsage;
    	MEM_USAGE MemUsage;
    
    }SETTING_LCD, *PSETTING_LCD;
    

    wie speicher ich am besten welches struct valid ist. Mit einer Vairable in der ich fuer jede Option ein Bit setzte oder zu jedem struct noch ein BOOL bValid hinzufueg!?

    Blessed Love C0de4Fun



  • Hey ich bins nochmal,

    also ich hab das jetz so geloest:

    2 zusaetzliche Values ins Enum mit eingefuegt

    typedef enum Options {OPT_FIRST, ..., OPT_LAST} OPTIONS;
    

    dann bin ich mit:

    OPTIONS eOption = (OPT_FIRST+1);
    
    while( eOption != OPT_LAST)
    {
    .....
    eOption++;
    }
    

    durchgegangen. Haette immer gedacht das geht nicht mit ++ fuer Enumes ,aber anscheinend doch :).

    Desweiteren hab ich in jedes Option Struct eine zusaetzliche Variable:

    BOOL bValid
    

    mit reingepackt.

    Blessed Love C0de4Fun


Anmelden zum Antworten