socorroooooo!!

uitikitak
22 de Febrero del 2004
Ya estoy por darme con la cabeza contra la pared,
espero que me podais echar un cable.

Cuando ejecuto:
printf("dir2:%s",dirpuerto2);
strncpy(puerto1, &dirpuerto1[j+1],z-j-1);
printf("dir3:%s",dirpuerto2);

por arte de magia desaparece el valor de dirpuerto2 y no se porque que porque no lo uso en el strncpy.

Espero que me podais echar una mano.GRACIAS.

Pigmaliong
22 de Febrero del 2004
Supongo que dirpuerto2 es un puntero a una cadena de caracteres porque usas %s. Posiblemente hayas definido dirpuerto2 como,

char *dirpuerto2;

y sólo sea una dirección sin espacio para guardar los caracteres, y en ese caso su dirección podría estar lo suficientemente cerca de la dirección de puerto1, como para que cuando escribes en puerto1 alteres los valores a los que apunta dirpuerto2. Si no es así, no tengo idea.