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

Error tonto que me esta volviendo loco

Estas en el tema de Error tonto que me esta volviendo loco en el foro de C/C++ en Foros del Web. Quiero hacer lo siguiente: char *ruta = "home/alumno"; char *base = basename(ruta); printf("Ruta: %s\n", base); basename devuelve un char * con la carpeta actual, "alumno". ...
  #1 (permalink)  
Antiguo 22/04/2010, 14:52
 
Fecha de Ingreso: septiembre-2006
Mensajes: 7
Antigüedad: 17 años, 8 meses
Puntos: 0
Error tonto que me esta volviendo loco

Quiero hacer lo siguiente:

char *ruta = "home/alumno";
char *base = basename(ruta);
printf("Ruta: %s\n", base);


basename devuelve un char * con la carpeta actual, "alumno". Al compilar sale el error: initialization makes pointer from integer without a cast

De esta forma hago:

char *base = (char*) basename(ruta);

y al compilar obtengo:
cast to pointer from integer of different size

¿Qué esta pasando? Necesito ayuda!!
  #2 (permalink)  
Antiguo 22/04/2010, 14:55
 
Fecha de Ingreso: junio-2008
Ubicación: Seattle, USA
Mensajes: 733
Antigüedad: 15 años, 10 meses
Puntos: 61
Respuesta: Error tonto que me esta volviendo loco

Te falta el prototipo supongo,
Creo que basename esta en libgen.h, entonces agrega

#include <libgen.h>

y el problema deberia desaparecer y el cast deberia ser innecesario
  #3 (permalink)  
Antiguo 22/04/2010, 15:37
 
Fecha de Ingreso: septiembre-2006
Mensajes: 7
Antigüedad: 17 años, 8 meses
Puntos: 0
Respuesta: Error tonto que me esta volviendo loco

Efectivamente, muchas gracias por la ayuda!

Etiquetas: loco
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 11:47.