Existen dos operadores de acceso a los campos de un struct o de un union: el operador . y el operador ->.
variable.nombreCampo
La forma de acceder a los campos de una variable de tipo struct o union es empleando el operador ".".
puntero->nombreCampo (*puntero).nombreCampo
Para acceder a los campos de una estructura a través de un puntero se pueden usar los operadores punto y asterisco o bien emplear el operador -> que tiene un formato más simple y compacto.
El procedimiento extrae elimina el primer nodo de una lista enlazada que contenga la información indicada como segundo parámetro.
#include <stdlib.h> struct Nodo{ //Tipo de nodo de una lista enlazada int info; //Información almacenada struct Nodo* sig; //Puntero al siguiente en la lista }; void extrae(struct Nodo **pNodo, int dato){ struct Nodo *actual=*pNodo; if((actual != NULL) && //Si no se ha alcanzado el final de la lista enlazada (actual->info == dato)){ //Condición de base equivalente a (*actual).info==dato *pNodo=actual->sig; free(actual); } else extrae(&(actual->sig),dato); }