para metros por refer en cia a punt adores
TRANSCRIPT
-
8/6/2019 Para Metros Por Refer en CIA A Punt Adores
1/13
COMPUTACIN ICOMPUTACIN I
TEMA 6.TEMA 6.Pasaje de parmetros por Referencia.Pasaje de parmetros por Referencia.Uso de apuntadoresUso de apuntadores
Prof. Mireya MoralesProf. Mireya Morales
-
8/6/2019 Para Metros Por Refer en CIA A Punt Adores
2/13
CONTENIDOCONTENIDO
Paso de parmetros por valorPaso de parmetros por valor
Funcionamiento de la memoria de unFuncionamiento de la memoria de un
computador.computador.Apuntadores. Operador de direccinApuntadores. Operador de direccin
Operador deOperador de indireccinindireccin..
Pasaje de parmetros por referenciaPasaje de parmetros por referencia(usando apuntadores)(usando apuntadores)
-
8/6/2019 Para Metros Por Refer en CIA A Punt Adores
3/13
Paso de parmetros por valorPaso de parmetros por valor
En el paso de parmetros por valor, estosno sern modificados una vez terminada laejecucin de la funcin. Se clasifican comoparmetros de entrada.
En C todos los parmetros se pasan porvalor.
Ejemplo
-
8/6/2019 Para Metros Por Refer en CIA A Punt Adores
4/13
Memoria del computadorMemoria del computador
La memoria RAM se compone de un grannmero de celdas de informacindenominadas bytes.
A cada una de estas celdas se le asigna unnmero de identificacin, que las distinguea unas de otras. Este nmero se conoce
como direccin de memoria. La direccin de memoria sirve como
identificador o referencia, la cual permite
acceder a una celda especfica
-
8/6/2019 Para Metros Por Refer en CIA A Punt Adores
5/13
Memoria del computadorMemoria del computador
Contenido
Direccin
0
1
2
.
.
1 Bytes
-
8/6/2019 Para Metros Por Refer en CIA A Punt Adores
6/13
Memoria del computadorMemoria del computador
Es importante recordar el concepto de
variable, el cual se refiere a una zona dememoria reservada para almacenar un valorconcreto, perteneciente a un tipo de datos.
Cualquier variable que se defina debe utilizaruna zona de memoria que ocupe un nmeroentero de bytes.
Para acceder a una variable en memoria, elcompilador necesita disponer de: Nmero de bytes que la componen Direccin de memoria del byte inicial de la
memoria
-
8/6/2019 Para Metros Por Refer en CIA A Punt Adores
7/13
Memoria del computadorMemoria del computador
Letra1 bytes
Nmero entero4 bytes
-
8/6/2019 Para Metros Por Refer en CIA A Punt Adores
8/13
Memoria del computadorMemoria del computador
La direccin de memoria correspondiente al
byte inicial de una variable, vienerepresentada por el nombre de dichavariable. El compilador ser el encargado de
sustituir el nombre de dicha variable por sudireccin de memoria correspondiente,dentro del programa ejecutable final.
Es importante destacar que en el ejemploanterior, los 4 bytes estn situados en celdasconsecutivas.
-
8/6/2019 Para Metros Por Refer en CIA A Punt Adores
9/13
Apuntadores. Operador de direccinApuntadores. Operador de direccin
Un apuntador es un tipo de datos en C que a
diferencia del resto, no almacena datos, si nodirecciones de memoria.
Existen dos operadores que permiten trabajarcon apuntadores: el de direccin y el deindireccin.
Es posible conocer la direccin de memoria deuna variable durante la ejecucin de un
programa. Para ello es necesario utilizar eloperador de direccin, que se expresamediante el smbolo &.
La sintaxis es la siguiente: &variable
-
8/6/2019 Para Metros Por Refer en CIA A Punt Adores
10/13
Operador de DireccinOperador de Direccin
Apuntador
FE87A20
FE
87
A2
00
Ejemplo
-
8/6/2019 Para Metros Por Refer en CIA A Punt Adores
11/13
Apuntadores. Operador deApuntadores. Operador de indireccinindireccin
El operador de indireccin permite acceder al
contenido de una determinada direccin dememoria.
Por ejemplo si px es una variable de tipopuntero a entero, en C se define asi:
int *px ;int x = 4;px = &x; lo cual significa que px
almacenar la direccin de memoria dondese encuentra el valor 4.
Ejemplo
-
8/6/2019 Para Metros Por Refer en CIA A Punt Adores
12/13
Paso de parmetros por referenciaPaso de parmetros por referencia
En el paso de parmetros por referencia,estos si pueden resultar modificados, una
vez termine la ejecucin de la funcin. Seclasifican como parmetros de entrada y desalida.
En C es posible emular el paso de
parmetros por referencia, pero esnecesario conocer el manejo deapuntadores.
-
8/6/2019 Para Metros Por Refer en CIA A Punt Adores
13/13
Paso de parmetros por referenciaPaso de parmetros por referencia
En el paso de parmetros por referencia loque se pasa a la funcin es una referenciaa la direccin de memoria donde sealmacena dicho dato. De esta manera se
modifica el dato real. Cualquier modificacin que se haga en la
funcin se mantendr una vez que esta
termine. Los datos que se pasen por referencia
deben estar almacenados en memoria. Nose deben pasar constantes ni expresiones.
E em lo