AprenderC
← Todas las lecciones

Guardar varias cosas juntas

Cuando un dato tiene partes, se guardan en una sola cosa con nombre.

1Por qué

Un punto en un plano tiene dos números: cuánto a la derecha y cuánto arriba. Con lo que sabes hasta ahora serían dos cajitas sueltas, x e y, y tú acordándote de que van juntas.

Con dos está bien. Con cinco puntos son diez cajitas, y con una carta que tiene palo, número y color, cada baraja se convierte en un rompecabezas de nombres.

Un struct junta varias cajitas bajo un solo nombre y las trata como una sola cosa. Dejas de tener x1, y1, x2, y2 y pasas a tener dos puntos, cada uno con su x y su y.

Y lo importante: estás inventando un tipo nuevo. Hasta ahora usabas los que trae C —int, char— y ahora puedes crear los tuyos, con las partes que tenga sentido guardar juntas. Un programa grande se diseña casi siempre decidiendo primero qué tipos hacen falta.

A cada parte se le llega con un punto: p.x es la parte x de p.

2Míralo andar

Este programa funciona. Léelo, y después ejecútalo sin cambiar nada.

#include <stdio.h>
typedef struct {
int x;
int y;
} Punto;
int main(void)
{
Punto p;
p.x = 3;
p.y = 4;
printf("(%d, %d)\n", p.x, p.y);
return 0;
}

3Ahora tú

Completa el tipo Nota para que guarde el ramo y el puntaje, y haz que el programa escriba: IIC2133 saco 62

#include <stdio.h>
typedef struct {
} Nota;
int main(void)
{
Nota n;
n.puntaje = 62;
printf("IIC2133 saco %d\n", n.puntaje);
return 0;
}

↖︎ Tu línea va aquí: la parte que el programa usa más abajo. Termina en punto y coma, como una cajita normal.

Ejecutar

Lo que dice tu programa

↖︎ Escribe tu parte y dale a Ejecutar

Qué pasó

Aquí te aviso si tu programa hace algo raro.

    4Qué guarda tu programa

    Memoria

    ↖︎ Ejecuta el programa para ver qué pasa por dentro