Matrizes C ++

C ++ fornece uma estrutura de dados, the array, que armazena uma coleção sequencial de tamanho fixo de elementos do mesmo tipo. Uma matriz é usada para armazenar uma coleção de dados, mas geralmente é mais útil pensar em uma matriz como uma coleção de variáveis ​​do mesmo tipo.

Em vez de declarar variáveis ​​individuais, como número0, número1, ... e número99, você declara uma variável de matriz, como números e usa números [0], números [1] e ..., números [99] para representar variáveis ​​individuais. Um elemento específico em uma matriz é acessado por um índice.

Todas as matrizes consistem em locais de memória contíguos. O endereço mais baixo corresponde ao primeiro elemento e o endereço mais alto ao último elemento.

Declaração de matrizes

Para declarar uma matriz em C ++, o programador especifica o tipo dos elementos e o número de elementos exigidos por uma matriz da seguinte maneira -

type arrayName [ arraySize ];

Isso é chamado de matriz de dimensão única. oarraySize deve ser uma constante inteira maior que zero e typepode ser qualquer tipo de dados C ++ válido. Por exemplo, para declarar uma matriz de 10 elementos chamada balance do tipo double, use esta instrução -

double balance[10];

Inicializando matrizes

Você pode inicializar os elementos da matriz C ++ um por um ou usando uma única instrução da seguinte maneira -

double balance[5] = {1000.0, 2.0, 3.4, 17.0, 50.0};

O número de valores entre colchetes {} não pode ser maior do que o número de elementos que declaramos para a matriz entre colchetes []. A seguir está um exemplo para atribuir um único elemento da matriz -

Se você omitir o tamanho do array, um array grande o suficiente para conter a inicialização é criado. Portanto, se você escrever -

double balance[] = {1000.0, 2.0, 3.4, 17.0, 50.0};

Você criará exatamente o mesmo array que fez no exemplo anterior.

balance[4] = 50.0;

O acima cessionários instrução número elemento 5 th na matriz um valor de 50,0. O array com o índice será o , ou seja, o último elemento porque todos os arrays têm 0 como índice do primeiro elemento, também chamado de índice base. A seguir está a representação pictórica da mesma matriz que discutimos acima -

Acessando Elementos de Matriz

Um elemento é acessado indexando o nome da matriz. Isso é feito colocando o índice do elemento entre colchetes após o nome da matriz. Por exemplo -

double salary = balance[9];

A declaração acima levará 10 th elemento da matriz e atribuir o valor a variável salário. A seguir está um exemplo, que usará todos os três conceitos acima mencionados viz. declaração, atribuição e acesso a matrizes -

#include <iostream>
using namespace std;
 
#include <iomanip>
using std::setw;
 
int main () {

   int n[ 10 ]; // n is an array of 10 integers
 
   // initialize elements of array n to 0          
   for ( int i = 0; i < 10; i++ ) {
      n[ i ] = i + 100; // set element at location i to i + 100
   }
   cout << "Element" << setw( 13 ) << "Value" << endl;
 
   // output each array element's value                      
   for ( int j = 0; j < 10; j++ ) {
      cout << setw( 7 )<< j << setw( 13 ) << n[ j ] << endl;
   }
 
   return 0;
}

Este programa faz uso de setw()função para formatar a saída. Quando o código acima é compilado e executado, ele produz o seguinte resultado -

Element        Value
      0          100
      1          101
      2          102
      3          103
      4          104
      5          105
      6          106
      7          107
      8          108
      9          109

Matrizes em C ++

Os arrays são importantes para C ++ e precisam de muito mais detalhes. Seguem alguns conceitos importantes, que devem ser claros para um programador C ++ -

Sr. Não Conceito e descrição
1 Matrizes multidimensionais

C ++ oferece suporte a matrizes multidimensionais. A forma mais simples do array multidimensional é o array bidimensional.

2 Ponteiro para uma matriz

Você pode gerar um ponteiro para o primeiro elemento de uma matriz simplesmente especificando o nome da matriz, sem nenhum índice.

3 Passando matrizes para funções

Você pode passar para a função um ponteiro para uma matriz, especificando o nome da matriz sem um índice.

4 Retorna array de funções

C ++ permite que uma função retorne um array.