Punteros – Lenguaje C/C

shape
shape
shape
shape
shape
shape
shape
shape

Puntero es una característica del lenguaje C que consiste en:

  • Señalar o acceder a direcciones de memoria.
  • Acceder a variables que no son accesibles en una función.
  • Devuelve uno o más valores en una función.
  • Entre otros…

Cómo declarar un puntero:

Tipo *Variável;

Ejemplo:

#include 

void main()
{
int *p, q;
q = 1;
p = &q;
printf("P: %d", &q);
}

En el ejemplo anterior, se declaran un puntero ‘p’ y una variable ‘q’, ‘q’ recibe 1 y ‘p’ recibe la dirección de memoria de la variable ‘q’, vale la pena recordar que el & (‘e’ comercial) muestra la dirección de memoria, como ‘p’ es un puntero entonces apuntará al valor que está almacenado en esa dirección de memoria. Imaginemos los cajones numerados de un armario, podemos imaginar estos números como direcciones de memoria y lo que hace el puntero es apuntar al número de ese cajón, mostrando su contenido:

Uso de punteros en funciones:

#include 

void func(int *p);

void main()
{
int x;
x = 1;
printf("Valor de X antes da funcao: %d", x);

//Chamando função.
func(&x);

//Exibe valor de x depois de executar a função.
printf("\nValor de X depois da funcao: %d", x);
}

void func(int *p)
{
//Ponteiro *P apontando para o endereço de memória da variável X na função main() ou principal.
printf("\nPonteiro P: %d", *p);

//Altera valor da variável X.
*p = 2;
}

El programa anterior tendrá el siguiente resultado:

Valor de X antes de la función: 1
Puntero P: 1
Valor de X después de la función: 2

La variable ‘x’ se declara con el valor 1, la dirección de memoria de la variable ‘x’ se pasa al puntero ‘p’ a través de los parámetros de la función ‘func’, entonces ‘p’ apunta a la dirección de ‘x’ y le asigna el valor 2.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *