AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

Füllstand eines Arrays ermitteln?

Ein Thema von wonkos2 · begonnen am 20. Nov 2014 · letzter Beitrag vom 24. Nov 2014
Antwort Antwort
Seite 1 von 3  1 23   
wonkos2

Registriert seit: 18. Nov 2014
21 Beiträge
 
Delphi XE7 Professional
 
#1

Füllstand eines Arrays ermitteln?

  Alt 20. Nov 2014, 15:23
Ahoi DP,

aktuell grüble ich über das Problem nach, wie sich der Füllstand eines Arrays auslesen läßt. Gibt es dazu eine Funktion? Wenn nein, wie kann ich das mit Bordmitteln selbst bauen (XE3)? Ein dynamisches Array kann ich leider dazu nicht benutzen.

Hat jemand eine Idee dazu? Wenn ja, bitte ich um Euren Kommentar.

Viele Grüße,

wonkos2
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.537 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: Füllstand eines Arrays ermitteln?

  Alt 20. Nov 2014, 15:24
Was soll denn der Füllstand eines Arrays sein?
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Daniel
(Co-Admin)

Registriert seit: 30. Mai 2002
Ort: Hamburg
13.919 Beiträge
 
Delphi 10.4 Sydney
 
#3

AW: Füllstand eines Arrays ermitteln?

  Alt 20. Nov 2014, 15:31
Also Du hast ein Array fester Länge und hast offenbar auch Kriterien anhand derer Du prüfen kannst, ob ein Eintrag des Arrays als "belegt" oder als "frei" gilt.
Ich würde einfach von vorn bis hinten durchlaufen und zählen.
Daniel R. Wolf
mit Grüßen aus Hamburg
  Mit Zitat antworten Zitat
Benutzerbild von baumina
baumina

Registriert seit: 5. Mai 2008
Ort: Oberschwaben
1.275 Beiträge
 
Delphi 11 Alexandria
 
#4

AW: Füllstand eines Arrays ermitteln?

  Alt 20. Nov 2014, 15:32
Du merkst dir einfach beim Array-Füllen wieviel du gefüllt hast. Das wird wahrscheinlich eine Zählvariable sein.
Hinter dir gehts abwärts und vor dir steil bergauf ! (Wolfgang Ambros)
  Mit Zitat antworten Zitat
Benutzerbild von TRomano
TRomano

Registriert seit: 24. Nov 2004
Ort: Düsseldorf
190 Beiträge
 
Delphi 11 Alexandria
 
#5

AW: Füllstand eines Arrays ermitteln?

  Alt 20. Nov 2014, 15:36
@DeddyH: er meint wohl, ob ein Array-Element "belegt" ist oder eben nicht.

Das kommt wohl auf den Typ des Array´s an. Bei z.B. einem Integer-Array muss Du dir darüber im klaren sein, was für Dich "leer" bedeutet ... eine "0" oder was auch immer.
Thomas Forget
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.537 Beiträge
 
Delphi 11 Alexandria
 
#6

AW: Füllstand eines Arrays ermitteln?

  Alt 20. Nov 2014, 15:37
OK, das macht Sinn. Schwierig wird es nur, wenn es kein eindeutiges Kriterium gibt.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Benutzerbild von TRomano
TRomano

Registriert seit: 24. Nov 2004
Ort: Düsseldorf
190 Beiträge
 
Delphi 11 Alexandria
 
#7

AW: Füllstand eines Arrays ermitteln?

  Alt 20. Nov 2014, 15:42
Genau. Auch eine Null kann eine "Befüllung" eines Integer-Array´s sein. Aber die Kriterien wird der TE wohl kennen ...
Thomas Forget
  Mit Zitat antworten Zitat
wonkos2

Registriert seit: 18. Nov 2014
21 Beiträge
 
Delphi XE7 Professional
 
#8

AW: Füllstand eines Arrays ermitteln?

  Alt 20. Nov 2014, 16:05
Es geht um ein Array [0..x] of char. Es wird links nach rechts befüllt.

Geht das mit der Length-Funktion?

Geändert von wonkos2 (20. Nov 2014 um 16:07 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.114 Beiträge
 
Delphi 12 Athens
 
#9

AW: Füllstand eines Arrays ermitteln?

  Alt 20. Nov 2014, 16:14
Geht das mit der Length-Funktion?
Ja, wenn du das Length auf den enthaltenen Text und nicht auf das Array anwendest.

* Array nach String kopieren/casten und Length darüber
* oder Zeiger (PChar) auf Array und dann mit Length (impliziter Cast nach String) oder MSDN-Library durchsuchenlstrlen (Windows.pas)

Geht alles aber nur, wenn die Chars nach den Befüllten #0 sind (zumindestens das Erste von den Leeren).
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
Der schöne Günther

Registriert seit: 6. Mär 2013
6.110 Beiträge
 
Delphi 10 Seattle Enterprise
 
#10

AW: Füllstand eines Arrays ermitteln?

  Alt 20. Nov 2014, 16:17
Ich habe mich damit nie beschäftigt, aber ist der String nicht "zu Ende" sobald irgendwo ein 0-Character auftaucht? Alles danach würde nicht mehr gezählt werden.
Wenn er denn schon ein Char-Array hat wird man mit dem Umwandeln zu vollkommen anderen Typen sicher nicht glücklich wenn man nur wissen will "Wieviele Elemente im Array sind ungleich x?"
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 3  1 23   

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:13 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz