Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (ANSI-Standard) » Tatsächl. Elemente eines Arrays erm.

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 < [ 2 ]
000
04.09.2003, 08:32 Uhr
~Christian
Gast


Hallo,
wie kann ich zur Laufzeit die tatsächlich vorhandenen
Elemente in einem Array ermitteln das ich mit der Grösse: 2000
deklariert habe:
arr_meinArray[2000];

Mit dieser Zeile krieg ich nur den Deklarationswert:
numElements = sizeof(arr_meinArray)/sizeof(arr_meinArray[0]);

Anfänger bittet um Hilfe !
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
04.09.2003, 08:35 Uhr
Tommix



Hallo,
wenn Du arr_meinArray[2000]; deklarierst, hat das Array tatsächlich 2000 Elemente. Ob da was sinnvolles drin steht oder nicht.

Gruss, Tommix
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
04.09.2003, 08:47 Uhr
~Christian
Gast


Danke,
aber wie kann ich sonst mit Hilfe einer for-Schleife das Array über seine
tatsächliche Grösse auslesen.

for(int cnt=0;cnt<arr_groesse??;cnt++)...
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
04.09.2003, 09:01 Uhr
Tommix



Mit

C++:
int arr_groesse = 2000;


Mir ist der Unterschied zwischen "Grösse" und "tatsächlicher Grösse" nicht klar.

Gruss, Tommix
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
04.09.2003, 09:06 Uhr
ao

(Operator)


Hallo Christian,

mit

C++:
int arr[2000];


legst du ein Array mit 2000 int-Elementen an. Diese Größe ist fest, solange das Array existiert. Wenn du in dem Array nur 100 Werte speicherst und den Rest unbenutzt lässt, musst du dir das irgendwo gesondert merken:

C++:
int nNbrOfUsedElements = 100;
int i;
for (i = 0; i < nNbrOfUsedElements; i++)
{
    arr[i] = 4711;
}



Meintest du das?

ao
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
04.09.2003, 09:17 Uhr
~Christian
Gast


Das Ganze soll ja ein Programm (MFC) zu Abspeichern und Suchen von Büchern, CD´s, usw. werden.

Der Benutzer sucht z.B. eine CD in der Datenbank (MySql) per Volltextsuche und findet zu dem einen Begriffe z.B. 10 CD´s.

Das Ergebnis (10 CD´s) lese ich nun in eine Zwischenstruktur (Array) ein und deklariere dieses Array, weil ich ja nie weiß wie viele Ergebnisse ich habe, mit einem Wert von 2000; d.h. die Grösse ist 2000 und die tatsächliche Grösse ist
10.
Ich weiß, daß das eigentlich falsch ist, weil hier auf jeden Fall für 2000 Einträge der Speicher reserviert worden ist.

Mein Problem ist (deshalb brauche ich auch die tatsächliche Grösse des Arrays) eine Lösung zu finden, um zwischen den Datensätzen zu navigieren (vor-zurück).



Gruß, Christian
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
006
04.09.2003, 09:27 Uhr
virtual
Sexiest Bit alive
(Operator)


Nimm nen STL oder MFC Vector und gut is.
--
Gruß, virtual
Quote of the Month
Ich eß' nur was ein Gesicht hat (Creme 21)
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
007
04.09.2003, 09:53 Uhr
0xdeadbeef
Gott
(Operator)


Nimm den STL-vector.
--
Einfachheit ist Voraussetzung für Zuverlässigkeit.
-- Edsger Wybe Dijkstra
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
008
04.09.2003, 11:05 Uhr
typecast
aka loddab
(Operator)


@beefy: Ist der MFC Vector um so viel schlechter, oder ist das deine prinzipelle Abneigung gegen MFC ?

Und wieso stellt MFC einen eigenen Vektor zur Verfügung, wenn es den schon in der STL gibt?
--
All parts should go together without forcing. ... By all means, do not use a hammer. (IBM maintenance manual, 1925)

Dieser Post wurde am 04.09.2003 um 11:05 Uhr von Loddab editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
009
04.09.2003, 11:18 Uhr
virtual
Sexiest Bit alive
(Operator)


Als nicht MFC Mensch mag meine Aussage falsch sein: aber ich habe in erinnerung, daß es an einigen Stellen probleme gibt, STL Container in MFC Klassen einzubinden. Deshalb meinerseits der Vorschlag bei einem MFC Projekt ggf. auch MFC Container in Betracht zu ziehen. (Die Tatsache, daß ich die MFC nicht benutze, zeigt was ich von ihr halte).
--
Gruß, virtual
Quote of the Month
Ich eß' nur was ein Gesicht hat (Creme 21)
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 < [ 2 ]     [ C / C++ (ANSI-Standard) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: