Bueno, les pasteo el codigo:

#include <stdio.h>
#include <string.h>

struct datos{
char nombre[30];
int cant;
float precio;
  };

char *devuelve(float, int,struct datos);

main()

{
int cant=0,nrogas=0;
float preciodisp;
struct datos gaseosa[5];

gaseosa[3].cant = 5;
gaseosa[3].precio = 2;
strcpy(gaseosa[3].nombre,"Cocaloca");
printf("Ingrese el nro de la gaseosa\n");
scanf("%d",&nrogas);

printf("Ingrese cantidad que desea\n");
scanf("%d",&cant);

printf("Ingrese el dinero del que dispone\n");
scanf("%f",&preciodisp);

printf("%s\n",devuelve(preciodisp,cant,gaseosa[nrogas]));

}

char *devuelve(float disp,int cant,struct datos gas)
{
static char dev[30];

if(cant > gas.cant){
 strcpy(dev,"La cantidad de gaseosa disponible es:");
 strcat(dev,gas.cant)
                           }

return dev;
}

Es en realidad una reconstruccion de algo mucho mas grande, y solamente para probar algo. Ahora va la pregunta. En la funcion devuelve que tengo que devolver un puntero a char, necesito que dicho puntero tenga una cadena de caracteres y ademas concatenarle, en este caso, el entero cant. Obviamente me tira error el strcat, porque la funcion está definida con parametros char*, pero no se me ocurre otra manera de hacerlo, siempre teniendo que devolver un puntero a char y mostrando unicamente con el printf lo que me devuelve la funcion.
Se entiende? Alguien con alguna idea?
Muchas gracias muchachos.
_______________________________________________
Lugro mailing list
[email protected]
http://www.lugro.org.ar/mailman/listinfo/lugro

Responder a