Vectores en C

Iniciado por rollth, Enero 14, 2015, 11:54:52 PM

Tema anterior - Siguiente tema

0 Miembros y 1 Visitante están viendo este tema.

Enero 14, 2015, 11:54:52 PM Ultima modificación: Enero 15, 2015, 05:11:38 AM por Jimeno
Buenas, vengo a explicaros un poco como funcionan los vectores en C.



Lo primero que teneis que saber es como se declara un vector en C, que seria de la siguiente forma:

Código: c

typedef int TipoVector[10]

int main(){
  TipoVector vector;
}


En este caso abriamos declarado un vector con 10 espacios, cabe destacar que empieza desde cero, es decir si quisieramos modificar el ultimo espacio se haria de la siguiente forma:

Código: c

vector[9] = 0;


Y si quisieramos modificar el primer espacio se haria de esta forma:

Código: c

vector[0] = 0;


Otra cosa es que no se puede modificar el vector entero, hay que ir modificando elemento a elemento, esto lo podriamos hacer con un bucle, esto seria un ejemplo para hacer un vector que llegue hasta el 10

Código: c

for (i = 0; i < 10; i++){
  vector[i] = i;
}


Si quisieramos printear lo anterior lo hariamos de esta forma:

Código: c

for (k = 0; k < 10;k++){
  printf("%d\n",vector[k]);
}


Sabiendo esto solo me queda decir que se pueden hacer vectores tipo matriz es decir con dos dimensiones o incluso vectores de mas dimensiones.
Un vector tipo matriz se haría de esta forma.

Código: c

typedef int TipoVector[10];
typedef TipoVector TipoMatriz[10];


Esto sería una matriz de 10X10, y funciona igual que los vectores normales, si quisieramos printearla se haría de esta manera.

Código: c

for (i = 0; i < 10; i++){
  for (k = 0; k < 10; k++){
    printf("%d\n",matriz[i][k]);
}
}


Bueno, así una breve explicacion de como funcionan los vectores en C, espero que sirva.
RollthBuen hacker mejor You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login/You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login