Categorías > Lenguajes > C > C con struct ...
Nuevo Mensaje | Responder
lompa


150 envíos
Desconectado
1756 lecturas
2 respuestas
C con struct07-12-2010 a las 20:09:30

Buenas.

Hace mucho que nadie tiene un problema en C, así que seré yo quien continué dando faena a la gente :P

Me puse a pensar si se podría hacer lo siguiente:
Código Fuente:

#include <stdio.h>
#include <stdlib.h>

struct grupo
{
  int calificacion;

  enum grupo_aprendizaje
  {
    invitado=1,usuario,moderador,administrador
  }identificador;

};

int main (void)
{
  struct grupo A;

  puts("¿Que clasificacion quieres saber?
"
    "1 - anonimo
"
    "2 - usuario
"
    "3 - moderador
"
    "4 - administrador
");

  scanf("%d",A.identificador);

  switch (A.identificador)
  {
    case invitado:
      A.calificacion=2;
      break;
    case usuario:
      A.calificacion=3;
      break;
    case moderador:
      A.calificacion=4;
      break;
    case administrador:
      A.calificacion=5;
      break;
    default:
      puts("Error");
      break;
  }
  puts("END");
  return 0;
}


Al ejecutarlo me da el siguiente error:
Segmentation fault


Nunca he usado las estructuras lo suficiente como para dominarlas, y mucho menos dentro de ella un enum.

Me preguntaba si lo que he hecho es posible o no tiene ni cabeza ni pies :S

¡Saludos!


Responder | Citar | Moderar | Mensaje Privado
Training Channel
wilmaforez


65 envíos
Desconectado

#1
RE: C con struct08-12-2010 a las 11:13:32


Scanf requiere un puntero a un entero para guardar el resultado, prueba con:
  scanf("%d",&A.identificador);
o si no:
  scanf("%d",&(A.identificador));


Responder | Citar | Moderar | Mensaje Privado
lompa


150 envíos
Desconectado

#2
RE: C con struct08-12-2010 a las 11:34:47

Buenas..

Vale.. que error más tonto por dios!

Muchas gracias!


Responder | Citar | Moderar | Mensaje Privado