Paso de parámetros por valor y por referencia
-
Upload
vanessa-ramz -
Category
Engineering
-
view
31 -
download
1
Transcript of Paso de parámetros por valor y por referencia
PASO DE PARÁMETROS POR VALOR Y POR REFERENCIA
ALUMNOS:Juan Pablo Duarte Esparza 1103150007
Brayan Luna Ávila 11013150011Vanessa Ramírez Corral 1103150016
PROFESOR:
José Luis Bautista
MATERIA:Programación Estructurada
Software 2° AAula 12, UD-2
Enero – Abril 2012
*PASO DE PARÁMETROS POR VALOR
Los parámetros formales correspondientes reciben una COPIA de los valores (literales, constantes, variables, resultado de la evaluación de una expresión) de los parámetros actuales; por tanto, los cambios que se produzcan en ellos por efecto de la ejecución de la función no podrán afectar el valor de los parámetros actuales en caso de que estos fueran variables.
Ejemplo 1
void DibujarPuntos( int numPuntos ){
30int i;for ( i = 1; i <= numPuntos; i+
+ )printf(".");
}void main(){DibujarPuntos( 30 );}
*PASO DE PARÁMETROS POR REFERENCIA
Lo que se pasa a la función es la dirección de memoria del parámetro actual, en consecuencia debe ser una variable.
Así, una variable pasada como parámetro actual es compartida; es decir, puede ser accedida y modificada durante la ejecución de la función.
#include <stdio.h>void Cuadrado( int num, int &AptCuadrado ){
AptCuadrado = num * num;}
void main( ){int c =12;Cuadrado( 5, c);printf(”El cuadrado de 5 es %i \n",c );}
POR VALOR
POR REFERENCIA
*DIFERENCIAS
El parámetro por valor está denotado de que los valores que utilice en las funciones dadas, se podrán realizar cambios.
A diferencia del parámetro por referencia en donde el método es quien hará la parte crucial.
Java sólo utiliza el último parámetro mencionado.
*¿CÓMO ACTÚAN?
El paso de parámetros por referencia permite devolver
varios valores desde un procedimiento a través de los
parámetros actuales.
Si una función devuelve un solo valor usando la
sentencia return, es mejor que todos sus parámetros
sean por valor.
Las variables (parámetro actual) pasadas por valor a
una función no pueden ser cambiadas.
Las variables pasadas por referencia pueden ser
cambiadas dentro de la función.