Programmieren - alles kontrollieren 4.941 Themen, 20.708 Beiträge

c++ und länge einer dynamischen Pointers

ichesel / 2 Antworten / Baumansicht Nickles

Ich habe eine <br> PUCHAR Var=NULL <br>  denfiniert die hat eine länge von <br> Var=new UCHAR [2000]; klasse wenn ich sie weiter benuten will brauche ich die länge das heist ich defenier <BR> ULONG Menge=2000;


gibt es eine möglickkeit ohne das ich es mir merken muss wie auf die länge von Var komme.<br>sizeof liefert mir ja nur 4 da der Pointer ja nur 4 lang ist und vor dem laufen erstellt worden ist.<br> ein klares nein ist auch ok.


 

bei Antwort benachrichtigen
thomas woelfer ichesel „c++ und länge einer dynamischen Pointers“
Optionen

wenn du speicher dynamisch allozierst geht das nicht. wenn man einen speicherbereich braucht der dynamisch waechst aber von dem man die anzahl an darin befindlichen elementen benoetigt muss man eine etwas komplexere datenstruktur verwenden als einfach nur ein array zu allozieren - zum beispiel eine verkettete liste.

wenn du hingegen eigentlich nur ein array willst dessen groesse du dir nicht in einer konstanten merken willst dann geht das seht wohl:

int arr[ 123];
int num = sizeof( arr) / sizeof( int); // bzw. der gewuenschte typ.

WM_FYI

this posting contains no tpyos.
bei Antwort benachrichtigen
ichesel Nachtrag zu: „c++ und länge einer dynamischen Pointers“
Optionen

Auf die Technik wäre ich so auf die schnelle nicht gekommen
Das allein ist schon gut.
Die Technik geht aber nur mit Festen parametern und nicht mit Dynamischen längen.

Danke
den auch ein Klare nein ist besser als ein Vielleicht doch.



bei Antwort benachrichtigen