Foros del Web » Programación para mayores de 30 ;) » C/C++ »

Recursividad

Estas en el tema de Recursividad en el foro de C/C++ en Foros del Web. Programa principal . .int variable; . . .funcion(variable) . . . ............................ Funcion(int variable); . .variable = ; . . .for (i=0;i<3;i++) {llamadarecursiva(variable);} . .......................... ...
  #1 (permalink)  
Antiguo 20/12/2010, 09:22
 
Fecha de Ingreso: julio-2010
Mensajes: 216
Antigüedad: 14 años, 3 meses
Puntos: 0
Recursividad

Programa principal
.
.int variable;
.
.
.funcion(variable)
.
.
.
............................


Funcion(int variable);
.
.variable = ;
.
.
.for (i=0;i<3;i++) {llamadarecursiva(variable);}
.
..........................


Supongamos que cuando se hace el for de las llamadas recursivas, la variable vale 0, entonces todas las llamadas ejecuciones de la funcion tienen la variable a 0. Pero si en la primera ejecución variable toma elv alor 1 (por lo que sea), y quiero que el resto de llamadas que hice antes tengan el valor 1 en lugar del 0 que se envió...

Sam me has dicho que es con punteros apuntando a la di de memoria de la variable. PERO, ¿te importaría pintarme utilizando mi dibujo, donde pongo los asteriscos?
  #2 (permalink)  
Antiguo 20/12/2010, 10:56
 
Fecha de Ingreso: abril-2010
Ubicación: Rosario
Mensajes: 1.850
Antigüedad: 14 años, 7 meses
Puntos: 228
Respuesta: Recursividad

Programa principal
.
.int variable = 0;
.
.
.funcion(&variable); // Pasamos la direccion de memoria
.
.
.
............................

Funcion(int * variable);
.
.*variable = 1 ; // MOdificamos el valor
.
.
.for (i=0;i<3;i++) {Funcion(variable);} // Como argumento pasamos la direccion de memoria. no el valor
.
..........................

Etiquetas: recursividad
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:07.