Flag welcher Typ unter c



  • Welchen Datentyp verwendet ihr gewöhnlicherweise wenn man ein Flag in c verwendet und dieses nur auf "0" oder "1" auswerten möchte?

    Bool sollte hierbei nicht verwendet werden, ich nehme meistens einfach immer int, sehe aber oft das unsigned short oder short verwendet wird.



  • EF2004 schrieb:

    Bool sollte hierbei nicht verwendet werden,

    Warum nicht?
    Was steckt denn hinter Bool?

    EF2004 schrieb:

    ich nehme meistens einfach immer int,

    Ok.
    Die Größe von int ist (meist) so gewählt, dass der Prozessor damit am Besten zurecht kommt (mindestesn aber 16 Bit).

    EF2004 schrieb:

    sehe aber oft das unsigned short oder short verwendet wird.

    Warum auch nicht?
    signed char oder unsigned char geht auch.



  • Mehr als 32 Flags brauche ich selten, darum reicht mir ein uint32_t. Bei embedded Systemen sollte man vielleicht den Integer etwas pingeliger wählen.
    Falls du eh nur einen einzigen Flag hast, und es auch bei dem bleiben wird, ist alles andere als ein bool fragwürdig.


Anmelden zum Antworten