Estructuras

Una estructura es un conjunto de variables que se referencian bajo el mismo nombre. Permite agrupar muchísimas variables de cualquier tipo.

Declaración

typedef struct {
    int algo1;
    char algo2;
    float algo3;
}NombreDeLaEstructura;

 

 

 

La sintaxis de la declaración de una estructura en lenguaje C es:

Forma Correcta Forma Alterna
struct NombreDeLaEstructura {

     int algo1

     char algo2

     float algo3

}

typedef struct {

     int algo1

     char algo2

     float algo3

} NombreDeLaEstructura

Creación de una instancia de tipo estructura:

NombreDeLaEstructura NombreDeLaInstancia;

Creación de ambos al mismo tiempo:

struct NombreDeLaEstructura {
  int algo1
  char algo2
  float algo3
} NombreDeLaInstancia

Para referenciar un elemento de una estructura se realiza de la siguiente forma:

NombreDeLaInstancia.algo;

Typedef

El lenguaje C permite mediante el uso de la palabra reservada typedef definir nuevos nombres para los tipos de datos existentes, esto no debe confundirse con la creación de un nuevo tipo de datos. La palabra clave typedef permite solo asignarle un nuevo nombre a un tipo de datos ya existente. La sintaxis general de uso de typedef es:

typedef tipo nombre;

Donde tipo es cualquier tipo de datos permitido, y nombre es el nuevo nombre que se desea tenga ese tipo. Veamos algunos ejemplos:

typedef int entero;

typedef struct{
  unsigned código;
  char nombre[40];
  char apellido[40];
}cliente;

Y entonces podrían crearse nuevas variables de la forma:

entero a;

cliente b,*c;

Estructuras y Funciones

Para trabajar con una estructura dentro de una función es muy común usar punteros, que se verían de esta manera:

NombreFuncion(&NombreDeLaInstancia);

donde:

tipo NombreFuncion(*NombreDeLaInstancia){
  NombreDeLaInstancia->algo //Que es igual a: NombreDeLaInstancia.algo
}
btn1 btn
btn

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión /  Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión /  Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión /  Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión /  Cambiar )

Conectando a %s