Overførsel af statisk array som argument til funktionen
Stryg for at vise menuen
Overfør et 1-dimensionelt array som argument
For at overføre et 1-dimensionelt array til en funktion, placeres [] efter parameternavnet i funktionssignaturen.
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); }
Overfør et 2-dimensionelt array som argument
Overførsel af et 2D-array til en funktion fungerer på samme måde som ved et 1D-array — du bruger [][] efter parameternavnet.
Der er dog en vigtig forskel: I C++ kan du ikke erklære en funktionsparameter som datatype arrayName[][] uden at angive mindst én dimension.
Du skal definere antallet af kolonner (eller én dimension), så compileren kan beregne hukommelsesadresser korrekt ved adgang til array-elementer.
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 }
Tak for dine kommentarer!
Spørg AI
Spørg AI
Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat
Overførsel af statisk array som argument til funktionen
Overfør et 1-dimensionelt array som argument
For at overføre et 1-dimensionelt array til en funktion, placeres [] efter parameternavnet i funktionssignaturen.
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); }
Overfør et 2-dimensionelt array som argument
Overførsel af et 2D-array til en funktion fungerer på samme måde som ved et 1D-array — du bruger [][] efter parameternavnet.
Der er dog en vigtig forskel: I C++ kan du ikke erklære en funktionsparameter som datatype arrayName[][] uden at angive mindst én dimension.
Du skal definere antallet af kolonner (eller én dimension), så compileren kan beregne hukommelsesadresser korrekt ved adgang til array-elementer.
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 }
Tak for dine kommentarer!