Speicherbelegung

Gast #536064
Lesenswert?
• ▲
▼
Hallo,
eine Frage was belegt mehr Speicherplatz:

if(second == 60)
{
  second = 0;
}


oder


if(second == 60)
  second = 0;


of sieht man ja das die { und die } weg gelassen werden, wenn die 
anweisung nur einen befehl enthält.
Kann man dadurch speicherplatz sparen, was ja grade bei uC's wichtig ist
Gast #536083
Lesenswert?
• ▲
▼
Der Speicherbedarf ist der Gleiche. Die Klammern dienen der Übersicht 
und sind bei Programsequenzen, die länger als eine Zeile sind, unbedingt 
erforderlich. Im Kompilierten Code ist davon nichts mehr zu sehen. Schau 
die die generierten Listfiles an. GCC hat, wie andere Compiler sicher 
auch, Optimierungsschalter die den Grad der Optimierung festlegen.
Grüsse
Lothar
#536117
Lesenswert?
• ▲
▼
Lothar wrote:
> Der Speicherbedarf ist der Gleiche. Die Klammern dienen der Übersicht
> und sind bei Programsequenzen, die länger als eine Zeile sind, unbedingt
> erforderlich.

Korrekt wäre: ...die länger als eine Anweisung sind.
Dem C-Compiler ist die Zeilenlänge ziemlich egal.

Sie dienen nicht der Übersicht, sondern gruppieren mehrere Anweisungen 
zu einem Code-Block.

Severino
#536140
Lesenswert?
• ▲
▼

@ Lothar

Ja, einen guten Abend, und auch Dir frohe Ostern.

Sorry, wenn ich auf Details bestehe, aber ich habe oft gesehen, wie
Begriffe verwechselt werden, es beginnt in C bei der Verwirrung um
Deklaration und Definition; manche Leute halten es für Synonyme. Andere
Leute sprechen von "if-Schleifen", was es nicht gibt.
Es ist besser, sich präzise auszudrücken.

Severino
Gast #536147
Lesenswert?
• ▲
▼
@Severino
Im Prinzip hast Du Recht, IT kennt präzise Definitionen. Wenn Du das 
einem, der ein Problemchen hat um die Ohren haust, versteht er das 
vielleicht nicht mal. Und eine If-Schleife oder If-Codesequenz, so groß 
ist der Unterschied für mich nicht. Wird in manchen C-Büchern als 
abweisende Schleife beschrieben. Trotzdem, netter Kontakt. Wenn so eine 
Frage kommt, versuche ich zu helfen, manchmal auch landwirtschaftlich. 
Ich denke, wir begegnen uns ;o))
Gast #536236
Lesenswert?
• ▲
▼
Hehe,
Guten morgen !

Vielen Dank für die vielen Antworten, damit sei mir bestens geholfen :)

Das die { } bei mehr als einer Anweisung erforderlich sind war mir 
geläufig!

Also noch einen frohen Ostermontag und vielen Dank,

bis bald !

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.