22/10/2007, 12:03
|
| | Fecha de Ingreso: marzo-2004
Mensajes: 550
Antigüedad: 20 años, 9 meses Puntos: 7 | |
Re: concatenar char* y string en c++ Muchas gracias a todos por responder.
Probé con lo que puso MaxExtreme y me funcionó a la primera.
Con la otra opción de reservar memoria me pasa una cosa muy curiosa:
Si utilizo la funcion malloc de esta manera:
char * ruta = getEnv("HOME");
int n=strlen(argv[1])+strlen(argv[2])+strlen(ruta);
char *final;
final=(char*)malloc(n);
memset(final,0, n);
strcat(final,ruta);
strcat(final,"/");
strcat(final,argv[1]);
strcat(final,"/");
strcat(final,argv[2]);
Esto también me funciona perfectamente. Pero si sustituyo la linea de la instrucción malloc por:
final=new char(n);
Me salta una ventana de windows diciendo que no se puede escribir en memoria. Nose si es que no estoy reservando suficiente memoria.....aunque con malloc tambien reservo 'n' posiciones.....
Muchas gracias de nuevo por responder. |