Su código es solo una pequeña parte de una lista vinculada.
La idea es que su lista consta de n apariciones de la estructura que llamó «Nodo». Necesita un puntero al PRIMERO de ellos, este puntero le indica la ubicación de memoria de esta primera estructura (generalmente solicita el espacio para esto manualmente con malloc). La estructura de este bloque de memoria está definida por su estructura «Node». Le dice que primero hay algunos bytes para el int (sizeof int le dice cómo mutch) y luego hay algunos bytes para una dirección (este es su puntero «siguiente»). En el último elemento de su lista vinculada, usualmente usa nulo como valor para el siguiente, de esta manera puede verificar si su elemento activo es el último. Para agregar un elemento a su lista, debe asignar una ubicación incorrecta a la memoria y cambiar el siguiente puntero del último elemento a la ubicación de memoria que malloc dio. (Y no olvide establecer el siguiente puntero del elemento que acaba de crear en nulo).
De esta manera, funciona una lista vinculada. ¡Espero que esto ayude un poco!
Comentarios
Esto es parte de una definición de tipo. en sí mismo no apunta a nada, por la misma razón por la que no se puede colocar un sofá y un televisor de verdad dentro de una sala de estar dibujados en un conjunto de planos de una casa. Simplemente especifica «esto es lo que se supone que debe ir aquí».
La forma en que apunta al siguiente nodo en una lista vinculada es que cuando alguien crea realmente los nodos, asigna un valor al campo descrito por esa definición, que es un puntero que contiene la dirección de otro Node
.