2016-03-25 6 views
0

Ich habe eine Matrix (2-dimensionales Array) und würde die Werte einer bestimmten Linie zu einer Funktion senden wollen.Übergeben der Matrixlinie zur Funktion, C

Zum Beispiel:

Wenn ich die Matrix habe players[10][50] dann, wie kann ich nur Spieler passieren [0] [0 ... 50]?

+2

'Spieler [0]' wäre ein 1-dimensionales Array sein. –

+1

int my_function (int players []) und my_function (players [0]) funktionieren? – user3658411

+0

Ja, aber die Funktion muss irgendwie die Anzahl der Elemente kennen. Es kann das nicht nur mit Bezug auf das übergebene Array tun. –

Antwort

0

so etwas wie dies mit Zeigern Versuchen ...

#include <stdio.h> 

void printArrayRow(int * row, int rowSize) 
{ 
    int i; 

    for (i=0; i<rowSize; i++) 
    printf("%d ",row[i]); 

    printf("\n"); 
} 

int main(int argc, char *argv[]) { 

    int data[4][4] = {{0,1,2,3}, 
        {1,2,3,4}, 
        {2,3,4,5}, 
        {3,4,5,6}}; 

    printArrayRow(data[1], 4); 
} 
+0

Verwenden von Arrays für die Parameter wäre das gleiche, aber mehr selbstdokumentieren. Aber wir machen keine Hausaufgaben. Ein kurzer Hinweis wäre besser gewesen. – Olaf

Verwandte Themen