Passaggio di un array statico come argomento della funzione
Scorri per mostrare il menu
Passaggio di un array monodimensionale come argomento
Per passare un array monodimensionale a una funzione, inserire [] dopo il nome del parametro nella firma della funzione.
main.cpp
123456789101112131415161718192021#include <iostream> // Function to process a 1-dimensional static array void process(int arr[], const int size) { for (int i = 0; i < size; ++i) std::cout << arr[i] << " "; // Print each element of the array std::cout << std::endl; } int main() { const int SIZE = 5; // Initialize a 1-dimensional static array int oneDimArray[SIZE] = {1, 2, 3, 4, 5}; // Call the function to process the array std::cout << "Original Array: "; process(oneDimArray, SIZE); }
Passaggio di un array bidimensionale come argomento
Il passaggio di un array 2D a una funzione funziona in modo simile al passaggio di un array 1D — si utilizza [][] dopo il nome del parametro.
Tuttavia, esiste una differenza importante: in C++, non è possibile dichiarare un parametro di funzione come datatype arrayName[][] senza specificare almeno una dimension.
È necessario definire il numero di colonne (o una dimensione) affinché il compilatore possa calcolare correttamente gli offset di memoria durante l'accesso agli elementi dell'array.
main.cpp
1234567891011121314151617181920212223#include <iostream> // Function to print a 2D array with a fixed number of columns void process(int matrix[][3], const int rows) { // Loop through rows for (int i = 0; i < rows; ++i) { for (int j = 0; j < 3; ++j) // Loop through columns std::cout << matrix[i][j] << " "; // Print each element std::cout << std::endl; // Move to the next line } } int main() { const int ROWS = 2; int arr[ROWS][3] = {{1, 2, 3}, {4, 5, 6}}; std::cout << "Original Matrix:" << std::endl; process(arr, ROWS); // Pass array and row count to the function }
Grazie per i tuoi commenti!
Chieda ad AI
Chieda ad AI
Chieda pure quello che desidera o provi una delle domande suggerite per iniziare la nostra conversazione
Passaggio di un array statico come argomento della funzione
Passaggio di un array monodimensionale come argomento
Per passare un array monodimensionale a una funzione, inserire [] dopo il nome del parametro nella firma della funzione.
main.cpp
123456789101112131415161718192021#include <iostream> // Function to process a 1-dimensional static array void process(int arr[], const int size) { for (int i = 0; i < size; ++i) std::cout << arr[i] << " "; // Print each element of the array std::cout << std::endl; } int main() { const int SIZE = 5; // Initialize a 1-dimensional static array int oneDimArray[SIZE] = {1, 2, 3, 4, 5}; // Call the function to process the array std::cout << "Original Array: "; process(oneDimArray, SIZE); }
Passaggio di un array bidimensionale come argomento
Il passaggio di un array 2D a una funzione funziona in modo simile al passaggio di un array 1D — si utilizza [][] dopo il nome del parametro.
Tuttavia, esiste una differenza importante: in C++, non è possibile dichiarare un parametro di funzione come datatype arrayName[][] senza specificare almeno una dimension.
È necessario definire il numero di colonne (o una dimensione) affinché il compilatore possa calcolare correttamente gli offset di memoria durante l'accesso agli elementi dell'array.
main.cpp
1234567891011121314151617181920212223#include <iostream> // Function to print a 2D array with a fixed number of columns void process(int matrix[][3], const int rows) { // Loop through rows for (int i = 0; i < rows; ++i) { for (int j = 0; j < 3; ++j) // Loop through columns std::cout << matrix[i][j] << " "; // Print each element std::cout << std::endl; // Move to the next line } } int main() { const int ROWS = 2; int arr[ROWS][3] = {{1, 2, 3}, {4, 5, 6}}; std::cout << "Original Matrix:" << std::endl; process(arr, ROWS); // Pass array and row count to the function }
Grazie per i tuoi commenti!