As Enumerações, são um tipo definido pelo usuario, utilizando se de uma lista de identificadores. Os indentificadores desta lista, se assemelham a constantes.
Exemplo:
enum Meses{Janeiro = 1,Fevereiro,Marco,Abril,Maio,Junho,Julho,Agosto,Setembro,Outubro,Novembro,Dezembro};
No exemplo acima foi definido uma enumeração de meses, onde Janeirose torna um indentificador com valor 1 e os indentificadores seguintes tendo seu valor acrescentado em 1 sucessivamente até o fim da lista. Assim temos os 12 meses do ano, como indentificadores de valor entre 1~12.
Anúncios
Não consegui executar o exemplo da aula, não consegui executar a instrução “s3 = s1 + s2”. Da para fazer isso com enum em C?
Sim Felipe.
Os valoes de s1, s2, s3 são do tipo inteiro mascarados com uma String.
A equação não irá operar as máscaras, mas sim os valores reais.
Código:
#################################################################################
#include
#include
//Definindo uma {enum}’Enumeração’:
enum DiasSemana{Domingo, Segunda, Terca, Quarta, Quinta, Sexta, Sabado};
int main ()
{
// Declaração de uma Variável {enum}:
enum DiasSemana s;
s = Segunda; //1
printf(“Valor = %d \n”, s);
enum DiasSemana s1, s2, s3;
s1 = Segunda; // 1
s2 = Terca; // 2
s3 = s1 + s2; // 1 + 2
printf(“Domingo = %d. \n”, Domingo); // 0
printf(“s1 = %d. \n”, s1);
printf(“s2 = %d. \n”, s2);
printf(“s3 = %d. \n”, s3);
if (s3 == Quarta)
{
printf(“O dia é = QuartaFeira [ s3 ]
}
return 0;
}