array
Descripción
Una matriz es un conjunto de variables a las que se accede con un número de índice. Las matrices en el lenguaje de programación C, en el que se basa Arduino, pueden ser complicadas, pero el uso de matrices simples es relativamente sencillo.
Creación (Declaración) de una Matriz
Cualquiera de los métodos que se indican abajo son adecuados para crear (declarar) una matriz.
- Puede declarar una matriz sin inicializar como myInts.
- En myPins declaramos una matriz sin elegir un tamaño de forma explícita. El compilador cuenta los elementos y crea una matriz de tamaño apropiado.
- Por último se puede inicializar dar tamaño de la matriz, como en mySensVals.
- Tenga en cuenta que cuando se declara un array de tipo char, se requiere un elemento más de su inicialización, para mantener el carácter nulo requerido.
Acceso a una Matriz
Las matrices se indexan desde cero, es decir, el primer elemento de la matriz está en el index 0, por lo tanto
mySensVals[0] == 2, mySensVals[1] == 4, y así sucesivamente.
Esto significa que en una matriz de diez elementos, el índice nueve es el último elemento. Por lo tanto:
Por esta razón se debe tener cuidado al acceder a las matrices. El acceso a más allá del final de una matriz (utilizando un número de índice mayor que el tamaño de su matriz declarada - 1) se lee de la memoria que se utiliza para otros fines. La lectura de estas ubicaciones probablemente no va a servir para nada. La escritura en las posiciones de memoria al azar es definitivamente una mala idea y, a menudo puede conducir a resultados infelices tales como accidentes o mal funcionamiento del programa. Esto también puede ser un error difícil de localizar.
A diferencia de BASIC o Java, el compilador de C no hace la comprobación para ver si el acceso matriz está dentro de los límites legales del tamaño de la matriz que se ha declarado.
Para asignar un valor a una matriz:
mySensVals[0] = 10;
Para recuperar un valor de una matriz:
x = mySensVals[4];
Matrices y bucles FOR
Las matrices se utilizan muchas veces dentro de los bucles, en el que el contador de bucle se utiliza como el índice de cada elemento de la matriz. Por ejemplo, para imprimir los elementos de una matriz a través del puerto serie, se podría hacer algo como esto:
Ejemplo
Para ver un programa completo que muestra el uso de matrices, ver el tutorial Knight Rider example.
※ ARDUINO BUY RECOMMENDATION
Arduino UNO R3 | |
Arduino Starter Kit |