socorroooooo!!
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.
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.
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.
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.
