Está en la página 1de 15

PUNTEROS, ARREGLOS

Y ESTRUCTURAS

ARREGLOS (ARRAYS)

Un arreglo en C++ es un conjunto de


datos que se almacenan en memoria de
manera contigua con el mismo nombre.
Para diferenciar los elementos de un
arreglo se utilizan ndices detrs del
nombre del arreglo y encerrados por [].

NOTACIN DE ARREGLOS

Los ndices empiezan siempre en 0. As


entonces el valor de la primera posicin
de un arreglo llamado arreglo ser
arreglo[0].
La segunda posicin ser 1, por tanto
llamaremos a su respectivo valor en la
segunda posicin de esta manera:
arreglo[1]
La tercera posicin ser de ndice 2, etc

EJEMPLO EN C++

ESTRUCTURAS

Las estructuras (records) nos permiten


agrupar varios datos, que mantengan
algn tipo de relacin, aunque sean de
distinto tipo de dato, permitiendo
manipularlos todos juntos, usando un
mismo identificador, o cada uno por
separado.

ESTRUCTURAS

Para acceder a una estructura, se invoca


al objeto de la estructura, en este caso
Diego seguido de punto y su respectivo
atributo. As entonces para obtener el
valor del Nombre de Diego tenemos que
invocar de esta forma:

Diego.Nombre

EJEMPLO ESTRUCTURAS

PUNTEROS

Un puntero es un tipo especial de


variable, que almacena el valor de una
direccin de memoria. Esta direccin
puede ser la de una variable individual,
la de un elemento de un arreglo (array),
una estructura u objeto de una clase. Los
punteros, al igual que una variable
comn, pertenecen a un tipo de dato
(type) al que apuntan.

PUNTEROS

Un puntero es una variable como cualquier


otra.
Una variable puntero contiene una direccin
que apunta a otro espacio de memoria.
En esa posicin o espacio de memoria se
almacenan los datos a los que apunta el
puntero.
Un puntero apunta a una variable de
memoria.

PUNTEROS

PUNTEROS EN C++

Los punteros en C y C++ se notan de la


siguiente manera:

<Tipo de dato al que apunta>* <identificador o nombre de


puntero>;

Ejemplos:
int* ptr1; //Puntero a un tipo de dato entero (int)
char* ptr2; //Puntero a un tipo de dato char
float* ptr3; //Puntero a un tipo de dato float

PUNTEROS EN C++

Para asignar una direccin de memoria a un


puntero se utiliza el operador de referencia (&).
Ej. &var1, significa la direccin de la variable var1.
Por ello para inicializar un puntero necesitamos
realizar:

Asignar memoria definiendo una variable (int i)


Declarar un puntero (int* ptr1)
Hacer que el puntero apunte a la direccin de la
variable (ptr1 = &i)
Para darle un valor al contenido donde apunta el
puntero tendremos que usar tambin el comodn *. As
entonces *ptr1 = 50 significa que El contenido de ptr
toma el valor de 50 y por tanto I valdr 50

PUNTEROS EN C++
Otros ejemplos de declaracin
int edad = 50;
int* ptr_edad = &edad.

char* p;
char alfa = 'A';
p = &alfa;

PUNTEROS EN C++

En los ejemplos anteriores podremos


utilizar y modificar el valor de la variable
edad y alfa tambin mediante punteros
usando el comodn *. Esto afectar
directamente a la variable apuntada:
* ptr_edad = 80
*p = C

PUNTEROS EN C++

Demostremos este principio mediante el


siguiente cdigo:

También podría gustarte