Cómo determinar la longitud de una matriz en C
C no proporciona una forma integrada de obtener el tamaño de una matriz . Debe realizar un trabajo previo.
Primero, quiero mencionar la forma más sencilla de hacerlo: guardar la longitud de la matriz en una variable. A veces, la solución más sencilla es la que funciona mejor.
En lugar de definir la matriz de esta manera:
int prices[5] = { 1, 2, 3, 4, 5 };
Utilice una variable para el tamaño:
const int SIZE = 5;int prices[SIZE] = { 1, 2, 3, 4, 5 };
Entonces, si necesitas iterar la matriz usando un bucle, por ejemplo, usas esa SIZE
variable:
for (int i = 0; i SIZE; i++) { printf("%un", prices[i]);}
La forma procedimental más simple de obtener el valor de la longitud de una matriz es mediante el sizeof
operador.
Primero, debes determinar el tamaño de la matriz. Luego, debes dividirla por el tamaño de un elemento. Esto funciona porque todos los elementos de la matriz tienen el mismo tipo y, por lo tanto, el mismo tamaño.Te recomendamos Mejores Alfombras de Hidromasajes
Ejemplo:
int prices[5] = { 1, 2, 3, 4, 5 };int size = sizeof prices / sizeof prices[0];printf("%u", size); /* 5 */
En lugar de:
int size = sizeof prices / sizeof prices[0];
También puedes utilizar:
int size = sizeof prices / sizeof *prices;
ya que el puntero a la cadena apunta al primer elemento de la cadena.
Tips C
Tal vez te puede interesar:
- Introducción a React
- Agregar evento de clic a los elementos DOM devueltos desde querySelectorAll
- Cómo cambiar el valor de un nodo DOM
- Cómo comprobar si un elemento DOM tiene una clase
Cómo determinar la longitud de una matriz en C
C no proporciona una forma integrada de obtener el tamaño de una matriz . Debe realizar un trabajo previo. Cómo determinar la longitud de una matriz en C Có
programar
es
2025-01-04

Si crees que alguno de los contenidos (texto, imagenes o multimedia) en esta página infringe tus derechos relativos a propiedad intelectual, marcas registradas o cualquier otro de tus derechos, por favor ponte en contacto con nosotros en el mail [email protected] y retiraremos este contenido inmediatamente