Forum: Compiler & IDEs zweidimensionales Array von Struktur


von DB (Gast)


Lesenswert?

Hallo,

hab ein zweidimensionales array von einer Struktur
1
typedef struct test
2
{
3
  float wert;        
4
  int timestamp;      
5
}TEST;
6
7
TEST array[x][y];

Jetzt will ich das ganze mit pointer an eine Unterfunktion übergeben und 
in dieser bestimmte Werte des Arrays ändern.
Wie mach ich das?

von ich (Gast)


Lesenswert?

Man nehme sich ein Buch mit einem großen C vorne drauf und schlage nach.
Oder man benutzte Google .... Stichwort Übergabe von arrays

von Johann L. (gjlayde) Benutzerseite


Lesenswert?

DB wrote:
> Hallo,
>
> hab ein zweidimensionales array von einer Struktur
>
1
> typedef struct test
2
> {
3
>   float wert;
4
>   int timestamp;
5
> }TEST;
6
> 
7
> TEST array[x][y];
8
>
>
> Jetzt will ich das ganze mit pointer an eine Unterfunktion übergeben und
> in dieser bestimmte Werte des Arrays ändern.
> Wie mach ich das?
1
typedef struct
2
{
3
  float wert;
4
  int timestamp;
5
} test_t;
6
7
test_t array[10][10];
8
9
void foo (test_t a[][10])
10
{
11
    a[1][2] = 0;
12
}


> Stichwort Übergabe von arrays

und Stichwort code convention ;-)

von Elizar (Gast)


Lesenswert?

Ein Problem bleibt natürlich, wenn die Array-Größe bei verschiedenen 
Unterprogrammaufrufen unterschiedlich ist.

Der GCC erlaubt als Erweiterung zum C-Standard auch

void foo(int dim, test_t a[][dim])
   {
   ...
   }

Vielleicht hilft dir das ja.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.