¿Cómo contar el número de elementos de la matriz?

El número de elementos del arreglo del que estamos hablando se refiere al número total de elementos.
Por ejemplo:
hay 10 elementos en arr [10], hay
3X4 = 12 elementos en arr [3] [4],
entonces , ¿cómo podemos encontrar este número para la computadora?

Para una matriz unidimensional

#include <stdio.h>

int main()
{
    
    
	int arr[10] = {
    
     0 };
	int sz = sizeof(arr) / sizeof(arr[0]);

	printf("%d\n", sz);
	return 0;
}

En este momento, calculamos la cantidad de elementos en esta matriz unidimensional de la siguiente manera:! [Inserte la descripción de la imagen aquí] (https://img-blog.csdnimg.cn/20210124102523489.png

Inserte la descripción de la imagen aquí
Para una matriz bidimensional

#include <stdio.h>

int main()
{
    
    
	int arr[3][4] = {
    
     0 };
	int sz = sizeof(arr) / sizeof(arr[0][0]);

	printf("%d\n", sz);
	return 0;
}

Los resultados de la operación del programa son los siguientes:
Inserte la descripción de la imagen aquí
En este momento, expliquemos el sz en el programa anterior.
1. Primero, digamos que para una matriz unidimensional, arr [0] representa el primer elemento, y para una matriz bidimensional, arr [0] [0] representa el primer elemento.
2. En segundo lugar, el nombre de la matriz representa la dirección del primer elemento, pero hay dos excepciones
(1) Cuando sizeof (nombre de la matriz), el nombre de la matriz representa la matriz completa, no la dirección del primer elemento, y sizeof (matriz name) calcula el tamaño completo de la matriz.
(2) En el caso de & nombre de la matriz (& representa el carácter de la dirección), el nombre de la matriz representa la matriz completa, y aquí está la dirección de toda la matriz.
Además, todos los nombres de matriz son direcciones del primer elemento.
3. Finalmente, usamos todo el elemento de la matriz para eliminar el primer elemento de la matriz y obtener el número de elementos de la matriz.

Gracias por leer.

Supongo que te gusta

Origin blog.csdn.net/JixTlhh/article/details/113071225
Recomendado
Clasificación