Lanzar memoria
Cuando has acabado con la memoria se ha asignado que, debes nunca olvidarse de liberar la memoria pues liberará para arriba recursos y mejorará velocidad. Lanzar asignó memoria, utiliza la función libre.
free(ptr);
Estructuras
Así como los tipos de datos básicos, C tiene un mecanismo de la estructura que permita que agrupes los artículos de datos que se relacionan el uno al otro bajo nombre común. Esto se refiere comúnmente como tipo definido por el usario.
El struct de la palabra clave comienza la definición de la estructura, y una etiqueta da el nombre único a la estructura. Los tipos de datos y los nombres variables agregaron a la estructura son miembros de la estructura. El resultado es una plantilla de la estructura que se puede utilizar como tipo specifier. Lo que sigue es una estructura con una etiqueta del mes.
struct month
{
char name[10];
char abbrev[4];
int days;
};
Un tipo de la estructura se define generalmente cerca al comienzo de un archivo usando una declaración del typedef. el typedef define y nombra un nuevo tipo, permitiendo su uso a través del programa. el typedef ocurre generalmente enseguida después de las declaraciones del #define y del #include en un archivo.
La palabra clave del typedef se puede utilizar para definir una palabra para referir a la estructura más bien que a especificar la palabra clave del struct con el nombre de la estructura. Es generalmente nombrar el typedef con mayúsculas. Aquí están los ejemplos de la definición de la estructura.
typedef struct {
char name[64];
char course[128];
int age;
int year;
} student;
Esto define un nuevo tipo estudiante que las variables del tipo estudiante se pueden declarar como sigue.
student st_rec;
Aviso cómo es similar esto está a declarar un interno o un flotador. El nombre variable es st_rec, él tiene miembros llamados nombre, curso, edad y año. Semejantemente,
typedef struct element
{
char data;
struct element *next;
} STACKELEMENT;
A variable of the user defined type struct element may now be declared as follows.
STACKELEMENT *stack;
Considerar la estructura siguiente:
struct student
{
char *name;
int grade;
};
Un indicador al estudiante del struct se puede definir como sigue.
struct student *hnc;
Al tener acceso a un indicador a una estructura, el operador del indicador del miembro, - > se utiliza en vez del operador del punto. Para agregar un grado a una estructura,
s.grade = 50;
Podrías asignar un grado a la estructura como sigue.
s->grade = 50;
Como con los tipos de datos básicos, si deseas los cambios realizados en una función a los parámetros pasados para ser persistente, tienes que pasar por referencia (pasar la dirección). El mecanismo es exactamente igual que los tipos de datos básicos. Pasar la dirección, y referir a la notación variable del indicador que usa.
|