Enum-urile in C
Definiție: Enum-urile sunt un set de constante încapsulate sub forma unui tip de date care se pot definii de către utilizator cu valori predefinite sau cu valori implicite. Enum-uri cu valori predefinit au valorile setate explicit de către programator. Se poate vedea în exemplele de mai jos cum se declara și cum se poate folosi.
Valori implicite
Enum-uri cu valori implicite au valorile stabilite de către compilator în ordine crescătoare începând de la zero.
Utilizare
Aceste structuri de date sunt foarte utile pentru că datele sunt organizate, practic fiecare număr poate însemna ceva. Există totuși o problemă majoră când vine vorba de compilatoare diferite și alocarea memoriei pentru aceste variabile. Aceeaşi variabilă poate avea dimensiuni diferite pentru compilatoare diferite. În schimb pentru programarea sub windows enum-urile sunt foarte des folosite. Personal mi se par foarte ușor de folosit și ușor de înțeles.
Nu e mare filozofie, sunt niște constante organizate într-un anumit fel care practic nu te lasă să greşeşti asignarea variabilei de acest tip. Dacă se foloseşte la asignare orice alta valoare din afara intervalului compilatorul va returna o eroare. Dacă se foloseşte la asignare o valoare numerica care este totuși egala cu un termen din enumerare atunci şi în acest caz va returna o eroare.
Referinte:
C Enumeration Declarations
C_and_syntactically_similar_languages