Ver Mensaje Individual
  #1 (permalink)  
Antiguo 30/10/2009, 21:10
Avatar de Bazookao
Bazookao
 
Fecha de Ingreso: diciembre-2008
Ubicación: Mexico
Mensajes: 139
Antigüedad: 16 años, 3 meses
Puntos: 1
Pregunta Problema Funcion que regresa una cadena

tengo mi funcion
Código C++:
Ver original
  1. char * cadena(double numero)
  2. {
  3. //codigo de uso de numero
  4. char nume[10];
  5. strcpy(nume,otraVariable);
  6. return nume;
  7. }
y la funcion trabaja bien
pero ahora que quiero usarla con otra funcion que es para imprimir
corre mal imprimiendo cartacteres raros
Código c++:
Ver original
  1. //en Visula Studio 2008
  2. void imprimir(double areglo[],int tamArreglo)
  3. {//le pasa un arreglo de dobles y su tamaño
  4. char a[30]="";
  5.      {
  6.         for(int j=0;j<tamAreglo;j++)
  7.         {          
  8.             strcpy(a,cadena(areglo[j]));//segun lo que deberia hacer es copiar el resultado de la funcion en la variable a y luego imprimirla pero despues de hacer el strcpy la varialbe a toma cosas raras de resultado
  9.             printf("%s  ",a);
  10.         }
  11.             printf("\n");
  12.      }
  13.      cout<<endl<<endl;
  14.  
  15.  
  16. }

pero se que la funcion cadena esta bien
como lo se pues simple este progrma lo estoy haciendo en VS2008 SP1 en modo consola y aveces pruebo las funciones en Dev C++ llamadas justo en el main()
y O SORPRESA corre sin errores
Código c++:
Ver original
  1. //en Dev C++
  2. int main()
  3. {
  4. char a[20];
  5. strcpy(a,cadena(5.624));
  6.     printf("  %s",a);
  7. return 0;}

ademas a la hora de la depuracion justo cuando termina la funcion cadena el valor de la
variable nume es el que yo quiero, pero les vulevo a repetir que que despues el strcpy manda basura a la variable a

ya intente ponerlo como
Código:
cout<<cadena(areglo[j]);
Código:
printf("%s",areglo[j]);
e incluso solo pasandole constantes
Código:
strcpy(a,cadena(5.56));
printf("%s  ",a);
y nada

si alguien me pudiera ayudar se lo agradeceria bastante