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

Modificar variable arreglo dentro de funcion con puntero

Estas en el tema de Modificar variable arreglo dentro de funcion con puntero en el foro de C/C++ en Foros del Web. Hola, buen día. Mi problema en C es el siguiente: Necesito que una función me regrese ciertos valores, pero son varios y no los haré ...
  #1 (permalink)  
Antiguo 10/04/2009, 12:25
 
Fecha de Ingreso: marzo-2009
Mensajes: 4
Antigüedad: 15 años, 1 mes
Puntos: 0
Modificar variable arreglo dentro de funcion con puntero

Hola, buen día. Mi problema en C es el siguiente:

Necesito que una función me regrese ciertos valores, pero son varios y no los haré solo con return. Para esto quiero mandar apuntadores que quiero que se modifiquen dentro y los pueda usar fuera. Tengo lo siguiente:

NOTA: Mi funcion main esta en un archivo cpp, pero la funcion esta hecha en C.

int main(){
int k=20;
int* indice(new int[k]);
int* distancia(new int[k]);

//Declaracion de otras variables

r = searchNN (S,2,k,true,indice,distancia);
}


Tdist searchNN (Index S, Obj obj, int k, bool show, int* indice, int* distancia)

{ bkt *tree = (bkt*)S;
Tdist mdif;
Tcelem res = createCelem(k);
//res = createCelem(k);
_searchNN (&tree->node,obj,&res,tree->step);
if (show) /*showCelem (&res);*/ {
for( k = 0; k < res.csize; ++k ){
printf("%d %d %d\n", (k+1), res.elems[k].id, res.elems[k].dist);
indice[k]=(int) res.elems[k].id;
distancia[k] = (int) res.elems[k].dist;

}
}

mdif = radCelem(&res);
freeCelem (&res);
return mdif;
}



Segun veo, los valores si se le estan pasando bien dentro de la funcion searchNN, pero si despues los quiero usar fuera de la funcion, es decir, en main, lo que imprimo en pantalla es pura basura.

Gracias.
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 15:16.