Forum: Mikrocontroller und Digitale Elektronik array size in struct definieren


von Stm M. (stmfresser)


Lesenswert?

Hallo,

ich möchte array elementanzahl in struct wie folgt definieren.
1
typedef struct{
2
    int row;
3
    int col;
4
    float data[row*col];
5
    float *datap;
6
    
7
}Matrix;

leider geht es nicht. Wie kriege ich
1
float data[row*col];
 in struct?

Vielen Dank.

von .... (Gast)


Lesenswert?

mit nem pointer und malloc.

von Glaskugel (Gast)


Lesenswert?

Mein Fahrradhändler ruft an und sagt, dass mein neues Bike da ist. Ich 
steige auf mein neues Bike und fahre zum Händler um mein neue Bike 
abzuholen. Uuuuuuupsss ...

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Stm Mc schrieb:
> leider geht es nicht.

Wieviele Bytes Speicher belegt eine Instanz davon, wenn sie nicht 
initialisiert wird?

Welcher magische Mechanismus soll bei nachträglichem Verändern von "row" 
und "col" die Größe der Struktur anpassen?

In C kann die Größe eines Arrays nicht zur Laufzeit verändert werden, 
und erst recht nicht die Größe einer Struktur.

von Udo S. (urschmitt)


Lesenswert?

Dir wird nichts anderes übrig bleiben, als dich in die Kapitel 
"dynamische Speicherverwaltung" und "Arrays und Zeiger" deines ja sicher 
vorhandenen C- Buchs einzuarbeiten.
http://www.hanser-fachbuch.de/buch/Programmieren+in+C/9783446154971

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.