Como contar o número de elementos do array?

O número de elementos da matriz de que estamos falando refere-se ao número total de elementos.
Por exemplo:
há 10 elementos em arr [10], há
3X4 = 12 elementos em arr [3] [4],
então como podemos encontrar esse número para o computador?

Para uma matriz unidimensional

#include <stdio.h>

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

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

Neste momento, calculamos o número de elementos nesta matriz unidimensional da seguinte forma :! [insira a descrição da imagem aqui] (https://img-blog.csdnimg.cn/20210124102523489.png

Insira a descrição da imagem aqui
Para uma 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;
}

Os resultados da operação do programa são os seguintes:
Insira a descrição da imagem aqui
Neste momento, vamos explicar o sz no programa acima.
1. Em primeiro lugar, digamos que para uma matriz unidimensional, arr [0] representa o primeiro elemento, e para uma matriz bidimensional, arr [0] [0] representa o primeiro elemento.
2. Em segundo lugar, o nome do array representa o endereço do primeiro elemento, mas há duas exceções
(1) Quando sizeof (nome do array), o nome do array representa o array inteiro, não o endereço do primeiro elemento, e sizeof (array nome) calcula todo o tamanho do array.
(2) No caso de & nome do array (& representa o caractere de endereço), o nome do array representa todo o array e aqui está o endereço de todo o array.
Além disso, todos os nomes de array são endereços do primeiro elemento.
3. Finalmente, usamos todo o elemento do array para remover o primeiro elemento do array para obter o número de elementos no array.

Obrigado pela leitura.

Acho que você gosta

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