Parametros

Solo disponible en BuenasTareas
  • Páginas : 3 (625 palabras )
  • Descarga(s) : 0
  • Publicado : 27 de septiembre de 2010
Leer documento completo
Vista previa del texto
PARAMETROS PASADOS POR  PARAMETROS PASADOS POR VALOR Y PASADOS POR  REFERENCIA
Programación I Eliana  Guerrero S. Eliana Guerrero S.

PARAMETROS PASADOS POR VALOR Y PASADOS POR  REFERENCIAPASADOS POR VALOR: SE PASA SOLO EL VALOR Y SE OCUPAN  PASADOS POR VALOR: SE PASA SOLO EL VALOR Y SE OCUPAN DIFERENTES POSICIONES DE MEMORIA ENTRE LOS  PARÁMETROS REALES Y LOS FORMALES.PASADOS POR REFERENCIA: SE PASA EL VALOR Y LA DIRECCION DE MEMORIA.  En C++ se usa símbolo & acompañando a la variable del  parámetro formal.
Recibe valor y dirección de memoria  (parámetro por referencia) void cambio1(int&x int y) ; //prototipo o cabecera &x, int y)  ; //prototipo o cabecera Recibe solo el valor (parámetro por valor)

Ejemplo pasado por Valor. Ejemplo pasado por Valor a1=2; b1=3; a2=4;b2=5; ………sumar(a1,b1);  // Llamada ….. sumar(a2,b2 );  // otra Llamada ( ) ……….
a1 2

Traza o tabla de comprobación p
globales b1 a2 3 4 b2 5 a 2 4 sumar b 3 5 c 5 9 Imprime resultado de la suma es: 5resultado de la suma es: 9 resultado de la suma es: 9

Modulo  sumar void sumar(int a, int b) Primera llamada { Segunda llamada int c; c=a+b; b printf(“resultado de la suma es: %d”,c); getch(); } Suponiendo que son posiciones de memoria del ejemplo anterior
Dir:100 Dir:102 Dir:104 Dir:108

2 a1

3 b1

4 a2

5 b2

Dir:200

2  4 a

Dir:210

3  5 b

5   9 c

Dir:216Primera llamada Segunda llamada

Ejemplo pasado por referencia. Llamadas ……… Ingresar(a1,b1); Ingresar(a2,b2); ………. Modulo  ingresar Void ingresar(int &a, int &b) a1 { 2 printf(“Ingrese primer valor: “); scanf(“%d”,&a); printf(“Ingrese segundo  valor: “);  scanf(“%d”,&b); }
Si  ingresamos : 2, 4 en la primera llamada 2, 4 en la primera llamada 6, 8 en la segunda llamada

Traza o tabla de comprobaciónglobales l b l b1 a2 4 6 8 b2 a 2 6 ingresar i b 4 8

Suponiendo que son posiciones de memoria del ejemplo anterior
Dir:100 Dir:102 Dir:104 Dir:108

2 a1

4 b1

6 a2

8 b2

Dir:200...
tracking img