www.mikrocontroller.net

Forum: PC-Programmierung Vektor[??], Variabel

Autor: Gena (Gast)
Datum: 01.07.2008 07:47

Hallo Programmiere uC, mit hilfe des IDE von Keil,

bin dabei einen Vektor zu erzeugen der am besten eine Variable Länge
hat??

Weiss zufällig jemand wie man das macht??

mfg
Gena
Autor: Rufus t. Firefly (rufus) (Moderator)
Datum: 01.07.2008 09:22

In C? realloc verwenden.

Auf einem µC ist das allerdings wegen dessen begrenzten Arbeitsspeichers
oft nicht sinnvoll.
Wieviele Elemente wird Dein Vektor (vulgo Array) denn üblicherweise und
wieviele maximal aufnehmen müssen?

Wieviel RAM hat der von Dir verwendete µC?
Autor: Gena (Gast)
Datum: 01.07.2008 09:41

hi,

Also das Array wird max. 48 und min. 18 Elemente aufnehmen.
Weiss nicht auf anhieb wieviel Ram der uC hat, ist ein c167 L40M auf nem
Phycor Board (Phycor 167 HS/E).

Hab bis jetzt keine Prob. mit dem Ram..
Autor: Karl heinz Buchegger (kbuchegg) (Moderator)
Datum: 01.07.2008 09:49

Gena wrote:
> Also das Array wird max. 48 und min. 18 Elemente aufnehmen.

Wir reden von einem Array aus Basistypen (also keine Strukturen
oder sowas):

Dann pfeif auf die Dynamik. Der Unterschied zwischen 48 und 18
ist so gering, dass es sich nicht lohnt da eine komplizierte
Verwaltung (ala realloc) sich ins Programm zu holen nur
um manchmal maximal 30 * sizeof(Basistyp) Bytes einzusparen.

Mach dir einfach eine 2-te Variable die dir sagt, wieviele
Elemente von den den 48 tatsächlich benutzt werden und gut ists.

> Hab bis jetzt keine Prob. mit dem Ram..
Na dann spricht ja überhaupt nichts dagegen, das Ganze
pragmatisch zu sehen. Für nicht benutzte Speicherzellen
kriegst du kein Geld zurück. Wenn du das Ganze dynamisch
halten willst, musst du ja trotzdem auch den Worst-case
Fall (dass alle 48 benutzt werden) abdecken und zusätzlich
auch noch den Fall, dass die dynamische Allokierung schief
gehen könnte.

Antwort schreiben

Die Angabe einer Email-Adresse ist freiwillig. Wenn Sie automatisch per Email über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Suchfunktion und Betreffsuche benutzen - vielleicht gibt es schon einen ähnlichen Beitrag
  • Aussagekräftigen Betreff wählen
  • Im Betreff angeben um welchen Controllertyp es geht (AVR, PIC, ...)
  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang
  • JPEG-Dateien (.jpg) nur für Fotos und Scans verwenden
  • Schaltpläne, Screenshots usw. als PNG oder GIF anhängen

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [pre]vorformatierter Text (z.B. Code in anderen Sprachen)[/pre]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel






webmaster@mikrocontroller.netImpressumWerbung auf Mikrocontroller.net