Cerqueu la mida de la matriu C ++

Find Array Size C



Una matriu és un contenidor que té elements del mateix tipus de dades. Si no sabem la mida real d’una matriu, es pot determinar mitjançant diferents mètodes. Quan parlem de la mida d’una matriu, en realitat parlem del nombre d’elements presents a la matriu. De vegades, definim la mida de la matriu i, de vegades, els claudàtors es deixen buits. Es tracta d’una mida aparent que només mostra la capacitat d’una matriu per emmagatzemar-hi valor. Per exemple, considereu una declaració de matriu de mostra

Matriu int[] = {1,2,3,4,5,6}

Aquí la mida d'una matriu o la longitud d'una matriu és 6. I la mida total de matriu que s'ha d'assignar no es mostra. La mida real s’obté aplicant diferents operacions. Aquestes operacions s’utilitzen en aquest article per obtenir la mida d’una matriu.







Exemple 1

En aquesta il·lustració, utilitzarem el concepte begin () i end (). Mitjançant aquest mètode es pot conèixer fàcilment la mida d’una matriu. Es tracta de dues biblioteques conegudes per les biblioteques estàndard. Aquestes dues funcions retornen els iteradors que mostren els punts preliminars i finals de la matriu. A partir de la capçalera, fem servir una biblioteca de matrius. Això inclourà totes les funcions relacionades amb la matriu. A la funció principal, hem iniciat una matriu amb valors enters.



Cost<<..........<<final(a)-begib(a)<<

Aquí no hem esmentat la mida de la matriu. A la declaració de visualització següent al cout, tenim les funcions end () i begin (). La diferència entre aquestes dues funcions ens mostrarà la mida d’una matriu. En els paràmetres d'aquestes funcions, hem passat la matriu. En fer-ho, es determinarà la mida real. Es mostra directament el valor resultant d’aquestes funcions.







Ara es mou cap a la sortida. Se suposa que haurem d'executar aquests programes a Linux, de manera que necessitem la implicació del terminal Ubuntu. Com que fem servir codi C ++, hem de compilar el codi a través del compilador. Aquest és el compilador G ++. Després de compilar el codi, l'executarem. Les ordres següents mostren l'enfocament de sortida que hem utilitzat.

$ g++ -o codi2 codi2.c

$./codi2



Ara podeu veure la sortida. Un altre exemple similar en el cas de std és la funció de distància. En aquesta distància es calcula utilitzant funcions begin () i end (). Això es completa utilitzant aquestes funcions amb std.

Int n=hores:: distància(hores::començar(arr),hores::final(arr));

La sortida s’obté a la sentència cout. Per veure el registre, torneu a utilitzar el compilador per executar el codi.

Aquí podeu veure que s’obté la nostra producció desitjada.

Exemple 2

Aquest exemple es refereix a l'ús de la funció sizeof () al codi C ++, ja que aquest valor retorna la mida real de les dades en forma de bytes. A més, també s’ocupa de retornar el nombre de bytes que s’utilitzen per emmagatzemar una matriu. Dit d'una altra manera, en aquest exemple, el primer pas és inicialitzar una matriu sense declarar la mida d'una matriu. la sintaxi utilitzada per a la funció sizeof () és:

Int al= mida de(arr)/mida de(arr[0]);

On arr és la matriu. arr [0] mostra l'índex dels elements de la matriu.

Per tant, aquesta afirmació implica que la mida de la matriu es divideix per la mida de tots els elements presents, un per un. Això ajuda en el càlcul de la longitud. Hem utilitzat una variable sencera per rebre i emmagatzemar el retorn de valor de la funció.

Aquí obtindrem la sortida des del símbol del sistema mitjançant el mateix mètode d’execució de compilació.

La sortida mostra la mida de la matriu, que implica el nombre d’elements presents en ella, que és 6.

Exemple 3

Aquest exemple inclou l'ús de la funció size (). Aquesta funció es col·loca a la biblioteca estàndard, STL. El pas inicial del programa principal és la declaració de matriu. Aquí el nom de la matriu també conté la mida i el valor enter. Aquest mètode també retorna el resultat directament a la sentència de sortida.

Cost<<....<<arr.mida()<<

On ‘arr’ és la matriu, per obtenir el resultat o accedir a la funció, necessitem el nom de la matriu amb la funció de mida.

Per mostrar el resultat, fem servir el compilador g ++ per compilar i executar el resultat.

A la sortida, podeu veure que el resultat és el que desitgeu i que mostra la mida real de la matriu.

Exemple 4

La mida d’una matriu també es pot obtenir utilitzant punteres, ja que els punteres emmagatzemen l’adreça / ubicació del valor de la variable. Ara considerem el següent a continuació com a exemple.

El pas inicial és inicialitzar una matriu com de costum. A continuació, el punter funciona per a la mida de la matriu.

Int len= *(&matriu+ 1)- matriu;

Aquesta és la declaració bàsica que funciona com a punter. * s'utilitza per localitzar la posició de qualsevol element d'una matriu, mentre que l'operador & s'utilitza per obtenir el valor de la ubicació obtinguda a través del punter. Aquesta és la manera d’obtenir la mida de la matriu a partir dels punteres. El resultat es mostra a través del terminal. La resposta és la mateixa. Com que la mida de la matriu esmentada es va indicar com a 13.

Exemple 5

En aquest exemple, hem utilitzat la idea de la deducció d'arguments de plantilla. Un argument de plantilla és un paràmetre d'un tipus especial. S'utilitza per passar un argument de qualsevol tipus, igual que les funcions regulars que es poden passar com a argument.

Quan es passa una matriu com a paràmetre, es converteix en un punter per mostrar l'adreça. Per obtenir la longitud de la matriu específica, fem servir aquest enfocament de deducció d'arguments de plantilla. STD és una forma curta d’estàndard.

Tenint en compte l'exemple donat, hem introduït una classe de plantilla que s'utilitza per obtenir la mida de la matriu. És una classe predeterminada integrada que conté totes les funcionalitats dels arguments de plantilla.

Constexpr std: : mida_tmida(constT(&matriu)[N])excepte{

tornarN;

}

Aquesta és una línia constant en aquest concepte. La sortida s’obté directament a la sentència cout.

A la sortida, podeu veure que tenim la sortida desitjada: la mida de la matriu.

Exemple 6

Utilitzem std :: vector per obtenir la mida de la matriu al programa. Es tracta d’un tipus de contenidor; la seva funció és emmagatzemar matrius dinàmics. Funciona amb diferents mètodes per a diferents operacions. Per aconseguir aquest exemple, hem utilitzat una biblioteca de vectors que inclou totes les funcions vectorials. També declara les sentències cin, cout, endl i vector que s’utilitzaran al programa. S'inicia una matriu primer al programa. La sortida es mostra a la sentència cout per mida del vector.

Cost<<mida del vector: <<int_array.mida() <<endl;

Ara veurem la sortida del terminal Ubuntu. La mida de la matriu és exacta per als elements que hi són presents.

Conclusió

En aquest tutorial, hem utilitzat un enfocament diferent per obtenir la longitud o mida de la matriu. Algunes són funcions integrades, mentre que d’altres s’utilitzen manualment.