struct
-
ich habe ein struct was ein anderes struct enthält. Jetzt will eine Variable im struct initialisieren. Ohne Erfolg habe ich es so probiert
#include <stdio.h> #include <stdlib.h> #include <math.h> const int DIM=2; struct Particle { double m; double x[DIM]; double F[DIM]; double F_old[DIM]; double v[DIM]; }; struct Particle p[]; struct ParticleList { struct Particle p; struct Particlelist *next; }; struct ParticleList l[]; int main() { l[0].p[0].m=1.0; l[0].p[0].x[0]=0; l[0].p[0].x[1]=0; return(0); }
gemeckert wurde über unerlaubte Datentypen struct Particle und int in der Zeile vor return
-
geb mal bei der Initialisierung in den eckigen Klammern eine Größe an
-
Wofür ist
docu schrieb:
struct Particle p[];
??
struct ParticleList l[];
Hier musst du, wie schon erwähnt, eine Größe angeben.
l[0].p[0].m=1.0; l[0].p[0].x[0]=0; l[0].p[0].x[1]=0;
Die Variable p innerhalb l ist kein Array! Also weg mit den [] hinter p. Falls es ein Array sein sollte, dann musst du das auch innerhalb deiner struct angeben.