lunes, 3 de diciembre de 2018

Aritmética de Apuntadores

Aritmética de Apuntadores:


Es posible sumar y restar valores enteros a un apuntador. El resultado de estas operaciones es el desplazamiento de la dirección de memoria hacia adelante (suma) o hacia atrás (resta) por bloques de bytes del tamaño del tipo de dato apuntado por el apuntador.  Esto permite recorrer arreglos utilizando apuntadores.

int vector[5]={10,20,30,40,50};
 

int *v;  // Un puntero al vector
 

v  = &vector[3];  //  ‘v’ almacena la dirección de la posición 3 del arreglo
v  = vector + 3  // Instrucción equivalente a la anterior
 

cout  << vector[2];     // Muestra 30
cout  << *(vector+2);  // Instrucción equivalente a la anterior


Ejemplos:

La ejecución de este programa visualiza el alfabeto:
#include <iostream>
using namespace std;
char c;   // declara una variable caracter
int main()
{
  char *pc;  // un puntero a una variable caracter
  pc = &c;
  for (c ='A'; c <='Z' ; c++)
    cout << *pc;
  return 0;
}


Ejercicios:


•Escribir un programa que muestre cómo un puntero se puede utilizar para recorrer un arreglo.

•Escribir un programa que declare un vector de 5 posiciones, lo inicialice con valores; además declarar un puntero que apunte a cada posición de los elementos del vector e imprime el valor y la dirección de memoria.

No hay comentarios:

Publicar un comentario