Principio básico del operador SizeOf para calcular el tamaño de la matriz
Memoria requerida (en bytes) = sizeof (tipo de datos) * size de matriz.Ejemplo: int a [10];
Entonces, sizeof (DataType) = sizeof (int) = 4 bytes
Tamaño de matriz = 10 .
Entonces, la memoria requerida = (4 * 10) bytes = 40 bytes
Programación Ejemplo 1:
# incluirProducción: El tamaño de la matriz es 5
Explicación: Aquí, declaramos una matriz llamada ARR [] y asignamos algunos valores. Son 1, 2, 3, 4, 5. Si queremos determinar el tamaño de la matriz, significa cuántos elementos presentes en la matriz, tenemos que escribir el cálculo con la ayuda del operador de tamaño.
Sizeof (arr []) / sizeof (arr [0]);Aquí, el tamaño de ARR [] es 5 y cada número entero toma memoria 4 bytes.
Entonces, la memoria total se consume = (5 * 4) bytes.
= 20 bytes.
SizeOf (arr [0]) significa aquí los elementos son enteros. Entonces, se necesita memoria 4 bytes.
Entonces, el tamaño de la matriz = (20/4) bytes = 5 bytes.
Si tomamos una matriz o cadena de personajes en lugar de una matriz entera, podemos explicar lo que sucedió en el próximo programa.
Programación Ejemplo 2:
# incluirProducción: El tamaño de la matriz es 5
Explicación: Aquí, declaramos una matriz llamada ARR [] y asignamos algunos valores.Son 'a', 'b', 'c', 'd', 'e'. Si queremos determinar el tamaño de la matriz, significa cuántos elementos presentes en la matriz, tenemos que escribir el cálculo con la ayuda del operador sizeof ().
Sizeof (arr []) / sizeof (arr [0]);Aquí, el tamaño de ARR [] es 5 y cada personaje toma memoria 2 bytes.
Entonces, la memoria total se consume = (5 * 2) bytes.
= 10 bytes.
sizeOf (arr [0]) significa aquí los elementos son carácter. Entonces, se necesitan memoria 2 bytes.
Entonces, el tamaño de la matriz = (10/2) bytes = 5 bytes.
Si tomamos una matriz flotante en lugar de una matriz de personajes, podemos explicar lo que sucedió en el próximo programa.
Programación Ejemplo 3:
# incluirProducción: El tamaño de la matriz es 5
Explicación: Aquí, declaramos una matriz llamada ARR [] y asignamos algunos valores.Ellos son 1.5, 2.5, 3.5, 4.5, 5.5. Si queremos determinar el tamaño de la matriz, significa cuántos elementos presentes en la matriz, tenemos que escribir el cálculo con la ayuda del operador sizeof ().
Sizeof (arr []) / sizeof (arr [0]);Aquí, el tamaño de ARR [] es 5 y cada flotador toma memoria 8 bytes.
Entonces, la memoria total se consume = (5 * 8) bytes.
= 40 bytes.
SizeOf (arr [0]) significa aquí los elementos están flotantes. Entonces, toma memoria 8 bytes.
Entonces, el tamaño de la matriz = (40/8) bytes = 5 bytes.
Calcule el tamaño de la matriz usando puntero
Otro método para determinar el tamaño de la matriz es usar puntero.
Programación Ejemplo 4:
int main ()
int main ()Explicación: Aquí, calculamos el tamaño de la matriz usando puntero.
int tize = * (& arr + 1) - arr;La línea anterior nos ayuda a calcular el tamaño de la matriz. Aquí, ARR significa la dirección base de la matriz o dirección del primer índice de la matriz.
* (y arr + 1)Significa la dirección del segundo índice de la matriz. Porque agregamos 1 a la dirección de la dirección base.
Si restamos el valor de la dirección de la matriz desde su dirección base, entonces obtenemos el tamaño de cada bloque en la matriz. Luego, podemos descubrir fácilmente el tamaño de la matriz contando el total de no de entradas que hemos dado a esa matriz en particular.
Producción:
Conclusión
Claramente, se muestra que con la ayuda del puntero del operador sizeof (), podemos calcular fácilmente la longitud de la matriz o el tamaño de la matriz. Principalmente, el operador sizeOf () es responsable de calcular el tamaño de la matriz, pero además, el puntero también puede admitir para determinar el tamaño de la matriz pasivamente.