Tema: Parametro *&
Ver Mensaje Individual
  #2 (permalink)  
Antiguo 08/09/2012, 22:52
cesar_casla
 
Fecha de Ingreso: diciembre-2011
Ubicación: CABA
Mensajes: 433
Antigüedad: 13 años
Puntos: 94
Respuesta: Parametro *&

Hola! esto es C++ no?? sino me equivoco hacer *& en la declaracion de una funcion(procedimiento) tendria el mismo funcionamiento a hacer doble puntero **. La diferencia seria en la llamada a dicha funcion. Te dejo un ejemplo simple:
Código C++:
Ver original
  1. void func(int *&);
  2. int main()
  3. {
  4. int *c;
  5. c=(int *)malloc(sizeof(int));
  6. func(c); // paso el puntero "c"
  7. printf("func: %d\n",*c);
  8.    
  9.     return 0;
  10. }
  11.  
  12. void func(int *&p) { // como voy a modificar el puntero "p" agregro & para indicar que se paso por pseudoreferencia
  13.      *p=5;
  14.      return;
  15.      }

Tambien se podria hacer:
Código C++:
Ver original
  1. //en la llamada
  2. func(&c); // paso la direccion de "c" para poder modificarlo en la funcion
  3. .........
  4.  
  5. // en la funcion
  6. void func(int **p) // lo manejo como puntero a puntero ya que "c" se paso por pseudoreferencia
  7. { }


Saludos