Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Overføring av statisk array som argument til funksjonen | Function Arguments Specification
C++-Funksjoner

Overføring av statisk array som argument til funksjonen

Sveip for å vise menyen

Sende et 1-dimensjonalt array som argument

For å sende et 1-dimensjonalt array til en funksjon, plasser [] etter parameternavnet i funksjonssignaturen.

main.cpp

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); }

Sende et 2-dimensjonalt array som argument

Å sende et 2D-array til en funksjon fungerer på samme måte som å sende et 1D-array — du bruker [][] etter parameternavnet.

Det er imidlertid en viktig forskjell: I C++ kan du ikke erklære en funksjonsparameter som datatype arrayName[][] uten å spesifisere minst én dimensjon. Du må definere antall kolonner (eller én dimensjon) slik at kompilatoren kan beregne minneoffsetene riktig når array-elementene skal nås.

main.cpp

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 }
question mark

Hvilken funksjonssignatur aksepterer korrekt et 2D statisk array som parameter?

Velg det helt riktige svaret

Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 2. Kapittel 4

Spør AI

expand

Spør AI

ChatGPT

Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår

Seksjon 2. Kapittel 4
some-alt