dynamisches Feld
-
Hi,
Wie kann ich aus einem statischen Feld ein dyn. Feld erzeugen:
Also ich habe eine Struktur mit 100 Einträgen, die noch 2 weitere Strukturen enthält:sSpeicher Memory[100]; struct sSpeicher // Speicher[Integer] = ID-Nummer { bool used; sParameter parameter; sTabelle tabelle; sSpeicher() { used = false; } }; struct sParameter { unsigned short int ParNummer; char ParName PAR_SIZE_NAME]; char ParTyp; bool ParStimulieren; // true = stimulieren unsigned char ParIBuffer; char ParMaske [PAR_SIZE_MASKE]; unsigned short int ParMaskeDez; double ParOffset; double ParSkalierung; char ParPhysikEinheit[PAR_SIZE_EINHEIT]; bool ParVorzeichen;// true = höchstwertiges Bit = '-' bool ParMinMax;// true = MinMax Werte vorhanden double ParMaxWert; double ParMinWert; char ParDarstellungsart; sParameter() // Werte initialisieren { ParNummer = 0; ParName[0] = '\0'; ParTyp = 0; ParStimulieren = false; ParIBuffer = 0; ParMaske[0] = '\0'; ParMaskeDez = 65535; // FFFFh Alle Stellen binär = 1 !!! ParOffset = 0; ParSkalierung = 1; ParPhysikEinheit[0] = '\0'; ParVorzeichen = false; ParMinMax = false; ParMaxWert = 0; ParMinWert = 0; ParDarstellungsart = 0; } };
Bis jetzt ist es statisch. Jetzt will ich ein dyn Feld daraus machen mit
List oder Vector.
Wie kann ich die Daten, die jetzt in in meinem Memory[id] sind
in dyn Feld kopieren und dann ausgeben.
Ein Beispiel wäre nicht schlechtDanke!!!!!!!!
-
Mit CList relativ einfach:
CList<sSpeicher,sSpeicher&> myList; sSpeicher s1; myList.AddTail(s1); sSpeicher s2; POSITION pos = myList.GetHeadPosition(); for (int i=0;i < myList.GetCount();i++) { s2 = myList.GetNext(pos); }
du kannst auch direkt mit GetAt suchen, aber das ist wohl mit deinem Stuct nicht möglich.
Falls dir der zugriff zu kompliziert ist, mach dir einfach eine doppelt verkettete liste oder sowas... Wobei das hier schon so eine liste darstelt.
und die "[0]" bei chars kannst du dir sparen...