Princípio básico do tamanho do operador para calcular o tamanho da matriz
Memória necessária (em bytes) = sizeof (datatype) * sizeof matriz.Exemplo: int a [10];
Então, sizeof (datatype) = sizeof (int) = 4 bytes
Tamanho de matriz = 10 .
Então, memória necessária = (4 * 10) bytes = 40 bytes
Exemplo de programação 1:
# incluirSaída: O tamanho da matriz é 5
Explicação: Aqui, declaramos uma matriz chamada arr [] e atribuímos alguns valores. Eles são 1, 2, 3, 4, 5. Se queremos determinar o tamanho da matriz, significa quantos elementos presentes na matriz, temos que escrever o cálculo com a ajuda do Sizeof Operator.
Sizeof (arr []) / sizeof (arr [0]);Aqui, o tamanho de arr [] é 5 e cada número inteiro pega a memória 4 bytes.
Portanto, a memória total é consumida = (5 * 4) bytes.
= 20 bytes.
Sizeof (arr [0]) significa aqui os elementos são inteiros. Então, leva a memória 4 bytes.
Então, o tamanho da matriz = (20 /4) bytes = 5 bytes.
Se pegarmos a matriz ou string de personagens em vez de matriz inteira, podemos explicar o que aconteceu no próximo programa.
Exemplo de programação 2:
# incluirSaída: O tamanho da matriz é 5
Explicação: Aqui, declaramos uma matriz chamada arr [] e atribuímos alguns valores.Eles são 'a', 'b', 'c', 'd', 'e'. Se queremos determinar o tamanho da matriz, significa quantos elementos presentes na matriz, temos que escrever o cálculo com a ajuda do operador sizeof ().
Sizeof (arr []) / sizeof (arr [0]);Aqui, o tamanho de arr [] é 5 e cada personagem leva a memória 2 bytes.
Portanto, a memória total é consumida = (5 * 2) bytes.
= 10 bytes.
sizeof (arr [0]) significa aqui os elementos são o personagem. Então, leva a memória 2 bytes.
Então, o tamanho da matriz = (10/2) bytes = 5 bytes.
Se levarmos o Float Array em vez de matriz de personagens, podemos explicar o que aconteceu no próximo programa.
Exemplo de programação 3:
# incluirSaída: O tamanho da matriz é 5
Explicação: Aqui, declaramos uma matriz chamada arr [] e atribuímos alguns valores.Eles são 1.5, 2.5, 3.5, 4.5, 5.5. Se queremos determinar o tamanho da matriz, significa quantos elementos presentes na matriz, temos que escrever cálculo com a ajuda do operador sizeof ().
Sizeof (arr []) / sizeof (arr [0]);Aqui, o tamanho de arr [] é 5 e cada flutuação leva a memória 8 bytes.
Então, a memória total é consumida = (5 * 8) bytes.
= 40 bytes.
Sizeof (arr [0]) significa aqui os elementos são flutuantes. Então, leva a memória 8 bytes.
Então, o tamanho da matriz = (40 /8) bytes = 5 bytes.
Calcule o tamanho da matriz usando o ponteiro
Outro método para determinar o tamanho da matriz é usando o ponteiro.
Exemplo de programação 4:
int main ()
int main ()Explicação: Aqui, calculamos o tamanho da matriz usando ponteiro.
int size = * (& arr + 1) - arr;A linha acima nos ajuda a calcular o tamanho da matriz. Aqui, arr, o endereço base da matriz ou endereço do primeiro índice da matriz.
* (& arr + 1)Significa o endereço do segundo índice da matriz. Porque adicionamos 1 ao endereço do endereço base.
Se subtrairmos o valor do endereço da matriz de seu endereço base, obtemos o tamanho de cada bloco na matriz. Em seguida, podemos facilmente descobrir o tamanho da matriz, contando o total de insumos que damos a essa matriz específica.
Saída:
Conclusão
Claramente, é mostrado que, com a ajuda de sizeof () ponteiro do operador, podemos calcular facilmente o comprimento da matriz ou o tamanho da matriz. Principalmente, o operador sizeof () é responsável por calcular o tamanho da matriz, mas também o ponteiro também pode suportar para determinar o tamanho da matriz passivamente.