Kapitel 10. Bessere Strukturen
Diese Arbeit wurde mithilfe von KI übersetzt. Wir freuen uns über dein Feedback und deine Kommentare: translation-feedback@oreilly.com
Neunundzwanzig verschiedene Eigenschaften und nur sieben, die du magst.
The Strokes, "You Only Live Once"
In diesem Kapitel geht es um Funktionen, die strukturierte Eingaben verarbeiten, und um die Verbesserung der Benutzeroberfläche unserer Bibliotheken.
Es beginnt mit drei Syntaxelementen, die mit dem ISO C99-Standard in C eingeführt wurden: zusammengesetzte Literale, Makros mit variabler Länge und designierte Initialisierungen. Das Kapitel ist zum großen Teil eine Erkundung all der Dinge, die Kombinationen dieser Elemente für uns tun können.
Mit zusammengesetzten Literalen können wir Listen einfacher an eine Funktion senden. Mit einem Makro mit variabler Länge können wir die Syntax für zusammengesetzte Literale vor dem Benutzer verbergen, so dass wir eine Funktion haben, die eine Liste beliebiger Länge annehmen kann: f(1, 2)
oder f(1, 2, 3, 4)
wären gleichermaßen gültig.
Wir könnten ähnliche Formen verwenden, um das Schlüsselwort foreach
zu implementieren, wie es in vielen anderen Sprachen üblich ist, oder eine Funktion mit einer Eingabe so vektorisieren, dass sie auf mehrere Eingaben wirkt.
Designated Initializers machen die Arbeit mit Structs viel einfacher, so dass ich die alte Methode fast vollständig aufgegeben habe. Anstelle von unleserlichem und fehleranfälligem Müll wie person_struct p = {"Joe", 22, 75, ...
Get 21st Century C, 2. Auflage now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.