(Este artículo forma parte del Curso de Programación en C)
Las variables de tipo puntero, como cualquier otra variable, deben ser declaradas antes de ser usadas.
Cuando una variable puntero es definida, el nombre de la variable debe ir precedido por un *. El tipo de dato que aparece en la declaración se refiere al tipo de dato que se almacena en la dirección representada por el puntero, en vez del puntero mismo. Así, una declaración de puntero general es:
tipo_dato *puntero;
donde puntero es la variable puntero y tipo_dato el tipo de dato apuntado por el puntero. Por ejemplo:
int *numero; char *letra;
La variable numero no contiene un número entero, sino la dirección de memoria donde se almacenará un número entero. La variable letra tampoco contiene un carácter, sino una dirección de memoria donde se almacenará un carácter.
Cuando un puntero ha sido declarado pero no inicializado, apunta a una dirección de memoria indeterminada. Si tratamos de usarlo en esas condiciones obtendremos resultados impredecibles (y casi siempre desagradables). Antes de usar cualquier puntero hay que asegurarse de que está apuntando a una dirección válida, es decir, a la dirección de alguna variable del tipo adecuado. Por ejemplo, así:
int *numero; int a; numero = &a;
El puntero numero ahora sí está en condiciones de ser usado, porque está apuntado a la dirección de la variable a, que es de tipo int, como el puntero.
Otra posibilidad es hacer que un puntero apunte a NULL. El identificador NULL es una constante definida en el lenguaje que indica que un puntero no está apuntando a ninguna dirección válida y que, por lo tanto, no se debe utilizar.

No comments
Comments feed for this article
Trackback link
http://profeblog.es/blog/alfredo/2008/05/19/declaracion-e-inicializacion-de-punteros-en-c/trackback/