Cómo asignar espacio para una estructura de programación c

Cuando la función malloc () en la programación C necesita ejercicio, se convierte en la estructura - una estructura tras otro, cada uno de ellos sentado en un nuevo lugar en la memoria, gracias a malloc (). Es lo que se pierden? ¡No! Debido a que cada estructura mantiene un registro de la siguiente estructura como eslabones de una cadena.

La función malloc () establece un lado espacio para todos los tipos de variables C, incluyendo arrays. También se puede exprimir una estructura en la memoria, haciendo un pequeño bolsillo agradable para la cosa, toda referencia a un puntero.

Cuando el almacenamiento de moda para una nueva estructura mediante el uso de un puntero, o en cualquier momento se hace referencia a una estructura mediante el uso de un puntero, un nuevo operador C entra en juego: la -gt; Lo que se conoce oficialmente como la estructura operador puntero. Este operador es la estructura de puntero equivalente del punto. Mientras que la notación tradicional de miembro de estructura se parece a esto:

date.day = 14-

el mismo miembro cuando se hace referencia a través de un puntero estructura se parece a esto:

Video: Ejercicios de programación en C - Paso de estructuras como parámetros en C utilizando punteros

fecha-gt; día = 14-

¿Por qué no se utiliza la notación * peeker? Bueno, podría ser. El formato original para un miembro de la estructura de referencia de un puntero es la siguiente:

(* Fecha) .day = 14-

Los paréntesis son necesarios a fin de obligar al operador * puntero a la fecha, la variable puntero estructura nombre- lo contrario, el. operador tendría prioridad. Pero por alguna razón, los programadores de C primitivos detestaban ese formato, por lo que fueron con -gt; en lugar.

La creación de una cartera estructurada demuestra cómo una estructura se puede crear mediante el uso de la función malloc (). La se define en la estructura de la línea 7, y una variable de puntero de que tipo de estructura se declara en la línea 12. En la línea 15, malloc () asigna suficiente almacenamiento para una estructura. El tamaño de la estructura se determina mediante el operador sizeof.

CREACIÓN expediente estructurado

Video: 100. Programación en C++ || Colas || Insertar elementos en una cola

#include #include #include int main () {struct población {símbolo char [5] precio -INT cantidad de flotación -} - struct agotadas * invertir - / * Crear la estructura en la memoria * / invertir = (struct agotadas *) malloc ( sizeof (struct de valores)) - if (invertir == null) {puts ("Algún tipo de malloc () Error") -exit (1) -} / * Asignar estructura de datos * / strcpy (invertir-gt; símbolo,"GOOG") -Invest-gt; 100 = cantidad a invertir-gt; precio = 801,19 - / * * / base de datos de visualización puts ("Cartera de inversiones") -printf ("SymboltSharestPricetValuen") -printf ("% -6st% 5DT% .2ft% .2fn", Invertir-gt; símbolo, invertir-gt; cantidad, invertir-gt; precio, invertir-gt; * Cantidad invertir-gt; precio) -Retorno (0) -}

El puntero invertir referencias a la nueva estructura excavada en la memoria. Las líneas 23 a 25 se llenan la estructura con algunos datos. Entonces puede utilizar líneas 28 a 34 mostrar los datos. Con cuidado, tenga en cuenta cómo el -gt; operador se utiliza para hacer referencia a los miembros de la estructura.

Video: Lógica de programación-Estructura selectiva simple

Ejercicio 1: Crear un nuevo proyecto utilizando el código fuente de la creación de una cartera estructurada. Generar y ejecutar.

Artículos Relacionados