Hola:
Lo primero daros las gracias a ambos por vuestros consejos. He seguido la recomendación de margarito04, usar otro índice, a parte de que he cambiado por completo el código y ahora uso una variable que me almacena el elemento anterior.
Me refiero a algo así:
Código C:
Ver originalvoid copiaCampo ( char * destino, char * origen, int tamanio )
{
int i;
int j = 0;
char anterior = 0;
for ( i = 0; i < tamanio; i++ )
{
if ( ( origen[i] != ']' ) || ( anterior != ']' ) )
{
destino[j] = origen[i];
j++;
anterior = origen[i];
}
else
{
anterior = 0; // para volver a contar con la siguiente pareja de corchetes
}
}
destino[i]='\0';
}
Gracias por todo,
gonzo