Array come parametro C ++

Array come parametro C ++
Le funzioni in C ++ possono accettare diversi tipi di argomenti quando vengono chiamate. Allo stesso modo, un array può anche essere passato come parametro a una funzione in C++. Per capire se passare un array come parametro a una funzione in C ++ è lo stesso di passare qualsiasi altro tipo di argomento a una funzione o meno, dovrai dare una lettura a questo articolo.

Passing Array come parametro in C ++ in Ubuntu 20.04:

Ogni volta che si desidera gestire più valori all'interno di una funzione, potrebbe essere necessario archiviare quei valori all'interno di un array. Quindi questo array può essere passato a quella funzione come parametro a seconda delle esigenze della funzione. Esistono diversi modi di passare un array come parametro in C++. Discuteremo in dettaglio tutti questi metodi nelle seguenti illustrazioni aggiunte.

Esempio n. 1: passare un array con dimensioni indefinite

Un array può essere passato a una funzione in C ++ in modo da non definire le sue dimensioni. Per comprendere questo metodo per passare un array a una funzione in C ++, dovrai dare un'occhiata al codice mostrato di seguito:

In questo codice di esempio, abbiamo definito una funzione denominata "PrintElements ()". Questa funzione accetta due argomenti diversi, io.e., "Int arr []" che si riferisce all'array di dimensioni indefinite e "int len" che corrisponde alla dimensione di quell'array. Quindi, all'interno del corpo di questa funzione, abbiamo solo un ciclo "per" che iterano alle dimensioni di questo array. Questo ciclo è lì per stampare tutti gli elementi dell'array passati a questa funzione come parametro sul terminale.

Quindi, all'interno della nostra funzione del driver, abbiamo definito una variabile intera "dimensione" e assegnato il valore "5" ad esso. Quindi, abbiamo dichiarato un array di dimensioni "dimensioni" e assegnato cinque diversi valori interi ad esso. Successivamente, abbiamo semplicemente chiamato la funzione "PrintElements ()" con il nome dell'array e la variabile "Size".

Per compilare questo programma di esempio, abbiamo eseguito il seguente comando:

$ g ++ ArrayParam.CPP -O ArrayParam

Per vedere se il nostro array è stato correttamente passato come parametro a una funzione del nostro programma, dobbiamo eseguire il nostro codice con il comando mostrato di seguito:

$ ./ArrayParam

L'output di questo programma, i.e., Tutti gli elementi dell'array passati come parametro alla funzione "PrintElements ()", sono mostrati nella seguente immagine:

Esempio n. 2: passare un array con dimensioni predefinite come parametro a una funzione in C ++:

Un array può anche essere passato a una funzione in C ++ in modo che la sua dimensione sia predefinita nel prototipo della funzione. Per comprendere questo metodo per passare un array a una funzione in C ++, dovrai dare un'occhiata al codice mostrato di seguito:

In questo codice di esempio, abbiamo definito una funzione denominata "PrintElements ()". Questa funzione accetta solo un singolo argomento, io.e., "Int arr [5]" che si riferisce a una serie di numeri interi di dimensioni "5". Quindi, all'interno del corpo di questa funzione, abbiamo solo un ciclo "per" che itera fino alle dimensioni di questo array, io.e., "5" in questo caso. Questo ciclo è lì per stampare tutti gli elementi dell'array passati a questa funzione come parametro sul terminale.

Quindi, all'interno della nostra funzione del driver, abbiamo semplicemente dichiarato un array di dimensioni "5" e assegnato cinque diversi valori interi. Successivamente, abbiamo appena chiamato la funzione "PrintElements ()" con il nome del nostro array intero.

L'output di questo programma, i.e., Tutti gli elementi dell'array passati come parametro alla funzione "PrintElements ()", sono mostrati nella seguente immagine:

Esempio n. 3: passare un array come puntatore a una funzione in C ++:

Un array può essere passato in un altro modo per una funzione in C ++ come puntatore. Per comprendere questo metodo per passare un array a una funzione in C ++, dovrai dare un'occhiata al codice mostrato di seguito:

In questo codice di esempio, abbiamo definito una funzione denominata "PrintElements ()". Questa funzione accetta due argomenti diversi, io.e., "Int *arr" che si riferisce a un puntatore a quell'array e "int len" che corrisponde alla dimensione di quel array. Quindi, all'interno del corpo di questa funzione, abbiamo solo un ciclo "per" che iterano alle dimensioni di questo array. Questo ciclo è lì per stampare tutti gli elementi dell'array passati a questa funzione come parametro sul terminale.

Quindi, all'interno della nostra funzione del driver, abbiamo definito una "dimensione" variabile intera e abbiamo assegnato il valore "5". Quindi, abbiamo dichiarato un array di dimensioni "dimensioni" e assegnato cinque diversi valori interi ad esso. Successivamente, abbiamo semplicemente chiamato la funzione "PrintElements ()" con il nome dell'array e la variabile "Size".

L'output di questo programma, i.e., Tutti gli elementi dell'array passati come parametro alla funzione "PrintElements ()", sono mostrati nella seguente immagine:

Avresti notato che l'output di tutti e tre i programmi discussi sopra era esattamente lo stesso, il che significa che hai appena imparato tre modi diversi di fare la stessa cosa.

Esempio # 4: passando un array multidimensionale a una funzione in C ++:

Possiamo anche passare un array multidimensionale a una funzione in C ++ molto facilmente. Per comprendere questo metodo per passare un array a una funzione in C ++, dovrai dare un'occhiata al codice mostrato di seguito:

In questo codice di esempio, abbiamo definito una funzione denominata "PrintElements ()". Questa funzione accetta solo un singolo argomento, io.e., "Int arr [2] [2]" che si riferisce a un array bidimensionale (2D) di dimensioni "2 x 2". Quindi, all'interno del corpo di questa funzione, abbiamo solo un ciclo "per" nidificato che iterano alle dimensioni di questo array. Questo ciclo è lì per stampare tutti gli elementi dell'array bidimensionale passati a questa funzione come parametro sul terminale.

Quindi, all'interno della nostra funzione del driver, abbiamo semplicemente dichiarato una matrice intera bidimensionale di dimensioni "2 x 2" e abbiamo assegnato due diverse coppie di valori interi. Dopodiché, abbiamo appena chiamato la funzione "PrintElements ()" con il nome di questo array bidimensionale.

L'output di questo programma, i.e., Tutti gli elementi dell'array bidimensionale passati come parametro alla funzione "PrintElements ()" sono mostrati nella seguente immagine:

Conclusione:

Questo articolo aveva lo scopo di attirare la tua attenzione sui diversi metodi per passare un array come parametro a una funzione in C ++ in Ubuntu 20.04. Per fare ciò, abbiamo discusso con precisione quattro diversi metodi con te attraverso i quali è possibile passare facilmente array monodimensionali e multidimensionali alle funzioni in C++. Pertanto, questi esempi ti aiuteranno molto ogni volta che intendi passare un array come parametro a una funzione in C ++ in Ubuntu 20.04.