hola tengo un preblema a la hora de usar vectores dinamicos en C, os cuento.
primero creo dos vectores:
int *m1,*m2;
m1=(int*)malloc(9*sizeof(int));
m2=(int*)malloc(9*sizeof(int));
les asigno valeros y compruevo que no hay problema, entonces creo un tercer vector
int *m3;
m2=(int*)malloc(9*sizeof(int));
Cuando empece a usarlos me empezaron a dar problemas y descubri un problema.El primer vector y el tercero tenian 4 espacios en comun en la asignacion de la memoria, con lo cual lo que ponia en la posicion 6 del primero de me ponia tambien en la 1 del 3. Como es esto posible si estan bien declarados.
Posdata: para avanzar en un vector uso un buble y avanzo en el vector con (m3+i*sizeof(int));