Överföra statisk array som argument till funktionen
Svep för att visa menyn
Skicka en endimensionell array som argument
För att skicka en endimensionell array till en funktion, placera [] efter parameternamnet 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); }
Skicka en tvådimensionell array som argument
Att skicka en tvådimensionell array till en funktion fungerar på liknande sätt som att skicka en endimensionell array — du använder [][] efter parameternamnet.
Det finns dock en viktig skillnad: i C++ kan du inte deklarera en funktionsparameter som datatype arrayName[][] utan att specificera åtminstone en dimension.
Du måste ange antalet kolumner (eller en dimension) så att kompilatorn kan beräkna minnesadresser korrekt vid åtkomst av arrayelement.
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 }
Tack för dina kommentarer!
Fråga AI
Fråga AI
Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal
Överföra statisk array som argument till funktionen
Skicka en endimensionell array som argument
För att skicka en endimensionell array till en funktion, placera [] efter parameternamnet 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); }
Skicka en tvådimensionell array som argument
Att skicka en tvådimensionell array till en funktion fungerar på liknande sätt som att skicka en endimensionell array — du använder [][] efter parameternamnet.
Det finns dock en viktig skillnad: i C++ kan du inte deklarera en funktionsparameter som datatype arrayName[][] utan att specificera åtminstone en dimension.
Du måste ange antalet kolumner (eller en dimension) så att kompilatorn kan beräkna minnesadresser korrekt vid åtkomst av arrayelement.
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 }
Tack för dina kommentarer!