Puntero a una matriz de enteros en lenguaje C [Declaraciones, inicialización con el Ejemplo]

Aprender: ¿Cómo declarar puntero a una matriz de enteros, cómo inicializar con la dirección de una matriz y la forma de elementos de la matriz de acceso utilizando el puntero?

Como hemos comentado antes que un puntero es un tipo especial de variable que puede almacenar la dirección de otra variable .

Un puntero también puede almacenar la dirección de una matriz de enteros . A continuación, vamos a aprender cómo declarar un puntero a una matriz de enteros, cómo inicializar el puntero con la dirección base de una matriz y cómo acceder a los elementos de la matriz utilizando el puntero?

1) declarar una matriz de enteros
int arr [] = {10,20,30,40,50};

2) Declarar un puntero de número entero
int * ptr;

3) Ahora, inicializar el puntero con la dirección de base de una matriz de enteros
A) Mediante el uso de nombre de la matriz (que devuelve la dirección de base de una matriz)
ptr = arr;
B) Mediante el uso de la dirección del primer elemento de enteros array (también devuelve la dirección de base de una matriz)
ptr = & arr [0];

4) Ahora, puntero contiene la dirección base de una matriz, para acceder al elemento particular , el uso * (ptr + N) . Aquí, N es el número de elemento

Por ejemplo ,
* (ptr + 0) – se return valor de arr [0]
* (ptr + 1) – voluntad return valor de arr [1]

* (PTR + N) – se return valor de matriz [N]

Considere el siguiente programa:

#include <stdio.h>
int main()
{
int arr[]={10,20,30,40,50};
int *ptr,loop;
//initialize ptr
ptr = arr;
//printing the elements
for(loop=0; loop<5; loop++)
printf("arr[%d]: %dn",loop,*(ptr+loop));
return 0;
}

salida

arr[0]: 10
arr[1]: 20
arr[2]: 30
arr[3]: 40
arr[4]: 50


Deja un comentario

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