Estos elementos pueden ser, o bien datos elementales (entero, real, carácter,...), o bien otras estructuras de datos.
A cada uno de esos elementos se le llama campo.
Un registro se diferencia de un vector en que este es una colección de datos iguales, es decir, todos del mismo tipo, mientras que en una estructura los elementos que la componen, aunque podrían serlo, no tiene por qué ser del mismo tipo.
Un ejemplo de como se declararía un registro en C podría ser: En este ejemplo se define el tipo de dato TNodo (o struct TipoNodo, sería equivalente) como una estructura (registro) que contiene un dato de tipo entero y dos punteros sig y ant (siguiente y anterior) que sirven para referenciar a otros registros del tipo TNodo.
Ésta es la estructura de datos que se suele utilizar como nodo en las listas doblemente enlazadas.