Technische Gründe hinter C Programmierstil?


29.09.2023, 19:48

3 Antworten

Technisch macht es nahezu keinen Unterschied wo du die Klammer setzt. Evtl. wird der Sourcecode je nach Formattierung etwas größer oder kleiner, aber das ist zumeist vollkommend vernachlässigbar.

Da die Formatierung für den Compiler nicht relevant ist, kann es ansich keine technischen Gründe geben, die für das eine oder andere sprechen.

Wenn ich in technische Gründe sowas wie die Displaygröße einbezöge, dann kann sich der eine oder andere Style vorteilhaft erweisen.

Technische Gründe gibt es da keine. Es geht nur um die Übersichtlichkeit.

Ich z.B. schreibe

if(a == b) {
  irgendwas;
} else {
  irgendwas_anderes;
}

Ein Kollege von mir schreibt stattdessen

if(a == b)
  {
    irgendwas;
  }
  else
  {
    irgendwas_anderes;
  }

Darüber kann man sich streiten, muss man aber nicht 😉.

guteantwort626  29.09.2023, 22:27

Dem Kollegen gerne mal während der Kaffeepause unbemerkt ein Codeformatter-Plugin in der IDE installieren, dass solche "Fehler" beim Speichern automatisch korrigiert ;)

1
Waldelb3  30.09.2023, 10:41
@guteantwort626

Und "IDEs" wie VisualStudio, die den oberen Code automatisch wie unten formatieren, sollte man einfach mal verbieten.

0
tunik123  30.09.2023, 10:50
@Waldelb3

Ich habe lange gebraucht, um dem VisualStudio das und auch anderes abzugewöhnen.

Ein anderes Beispiel: Aus den beiden Funktionsaufrufen

func(1.234, 2.345, 3.456);
func(4.5,   5.6,   7.8);

wird

func(1.234, 2.345, 3.456);
func(4.5, 5.6, 7.8);

Was soll das?

2
Waldelb3  30.09.2023, 11:36
@tunik123

VisualStudio wirkt auf mich so, als ob MS da aktiv versucht, den Entwicklern das Leben schwer zu machen. Am besten finde ich, dass eine Datei, die du in VS löschst, nicht auch auf dem Dateisystem verschwindet. Datei löschen, andere Datei mit selben Namen erstellen -> "die Datei kann nicht hinzugefügt werden, weil eine andere Datei mit dem selben Namen schon existiert". WTF. Biete mir doch wenigstens an, die Datei jetzt wirklich zu löschen?!

Meine Lösung für das Problem war, einfach eine andere IDE (und ein anderes Betriebssystem) zu verwenden.

1