====== Zeilenumbrüche und Zeilenlänge ====== Wir sollten unseren Code nur so breit machen, dass wir ihn im Editor noch ohne horizontales Scrollen vollständig lesen können. Einen Code der zu breit ist zu lesen und zu verstehen ist sehr schwer, wir müssen als Vergleich dazu nur einmal versuchen ein Buch zu lesen und dabei immer eine Hälfte der Seite abdecken, so dass wir in jeder Zeile unseren Textausschnitt "scrollen" müssen um ihn zu lesen. Es wird wahrscheinlich jedem einleuchten, dass das nicht optimal ist. \\ Eine oft verwendete Länge ist 80 Zeichen, die eigentlich auf jedem Bildschirm vollständig dargestellt werden kann. Diese Länge hat sich schon in vielen Programmen bewährt und deshalb sollten wir und angewöhnen sie einzuhalten. \\ In direktem Zusammenhang mit der Zeilenlänge steht natürlich auch das richtige Verwenden von Zeilenumbrüchen, denn wenn wir die Zeilenbreite von 80 Zeichen einhalten, dann brauchen wir natürlich auch irgendwann einmal ein paar Zeilenumbrüche. \\ Als Grundregel sollten wir in jede Zeile nur eine Anweisung schreiben, aber auch wenn wir zum Beispiel bei einem Funktionsaufruf so viele Variablen verwenden, dass es schon zu breit werden würde, sollten wir zwischen den Variablen auch manchmal einen Zeilenumbruch einbauen. \\ Damit das ganze etwas klarer wird, schauen wir uns noch kurz ein Beispiel an. ===== Schlechter Stil ===== Durch die sparsame Verwendung von Zeilenumbrüchen wir dieses Codestück nur sehr schwer lesbar. void uselessFunction(int argument1, float argument2, const char *text, int length, float *float_pointer, char first_letter) { int return_value = argument1 + length; printf("Calculating...\n"); *float_pointer = argument2; printf("First letter: %c, Text: %s\n", first_letter, text); return return_value; } ===== Guter Stil ===== Und hier ist noch einmal der gleiche Code, nur dieses mal mit gut platzierten Zeilenumbrüchen. Ich glaub jetzt kann jeder sofort erkennen, dass wenn wir Zeilenumbrüche richtig verwenden, die Lesbarkeit unseres Codes enorm gesteigert werden kann. void uselessFunction( int argument1, // So können wir auch float argument2, // gleich neben den const char *text, // Variablen Kommentare int length, // hinschreiben. float *float_pointer, // Ist doch viel schöner char first_letter) // so, oder? { int return_value = argument1 + length; printf( "Calculating...\n" ); // Zusammengehörige Codeteile sollten *float_pointer = argument2; // wir gruppieren. printf( "First letter: %c, Text: %s\n", first_letter, text); // Und andere Teil sollten wir // mit Zeilenumbrüchen optisch return return_value; // trennen. }