AnyCompiler

Structs

Un struct agrupa campos relacionados bajo un tipo con nombre. A diferencia de una class en Java, C++, o cualquier otro lenguaje de este sitio, un struct no tiene methods, no tiene constructors, y no tiene control de acceso — es puramente una forma de agrupar datos juntos, y cada campo es directamente accesible.

#include <stdio.h>

struct Point {
    int x;
    int y;
};

int main() {
    struct Point p = {3, 4};
    printf("%d %d\n", p.x, p.y);
    return 0;
}
Output
3 4

A continuación: memoria dinámica — malloc, free, y el heap: el mecanismo que el garbage collector de cada otro lenguaje existe para automatizar.

Practice exercise

Define un struct Book con los campos title (un array de char de tamaño 50) y pages (int). Crea un Book con title "Dune" y pages 412, luego imprime ambos con printf.