Farge wegen 89c51rc2

Gast #903394
Lesenswert?
• ▲
▼
Hallo,
wichtige Frage, gibt es bei C ein maximum an Variablen die man verwenden 
darf????
ich weiß nicht genau ob mir mein Compiler einfach nur eine sperre rein 
haut wei das Programm zu groß ist oder ob es am Programm selber liegt.
Benutze Raisonance Kit 6.1 RIDE IDE, vielleicht kennt das jemand.
danke für jede antwort
#903401
Lesenswert?
• ▲
▼
Julian wrote:
> Hallo,
> wichtige Frage, gibt es bei C ein maximum an Variablen die man verwenden
> darf????

Nein.

Man sollte allerdings drauf achten, wieviel SRAM man hat. Im MAP-File 
kann man die Speicherauslastung ansehen.
Man sollte auch soviel wie möglich lokale Variablen nehmen.
Größere Variablenfelder sollte man im langsameren XDATA ablegen (vorher 
im Startup-Code enablen und dem Compiler mitteilen, wieviel XDATA 
verfügbar ist).


Peter
Gast #903544
Lesenswert?
• ▲
▼
>gibt es bei C ein maximum an Variablen die man verwenden darf

Radio Eriwan sagt:

Im Prinzip schon.

Du kannst natürlich nur soviele Variablen haben wie Du benennen kannst.
Das ist aber ein wenig unterschiedlich unter den Compilern.

Nehmen wir aber mal an Du darfst bis zu 32 Zeichen lange Identifier 
haben und so rund 60 verschieden Zeichen verwenden. Dann kannst Du 60 
hoch 32 verschiedene, also rund 8 mal 10 hoch 56 (eine 8 mit 56 Nullen) 
verschiedene Identifier verwenden. Das muss dann evtl. noch zwischen 
Typen, Funktionen usw. aufgeteilt werden oder die haben getrennte 
Verwaltungen.

Ich bezweifle allerdings das irgendein Compiler soviele Variablen 
verwalten kann. Das hängt dann auch noch von der Implementierung ab. 
Etwa 2 hoch 32 (also etwa 4 Milliarden)  oder vielleicht auch 2 hoch 64 
(also 18 mal 10 hoch 6) wäre eine mögliche Grenze.

Praktisch ist das aber RAM der ausschlaggebende Faktor, da hat Peter 
schon recht.
Gast #905159
Lesenswert?
• ▲
▼
Ok, problem ist der RAM.
hab eine lösung gefunden in dem ich die Variablen umstendlcih versuch zu 
verringern.
Daher die frage verbraucht z.B. ein Array oder eine Strucktur mehr oder 
weniger Speicherplatz?

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren