Um zu verstehen, warum in C ein Standard eingeführt wurde, müssen Sie etwas zur Geschichte dieser Sprache wissen.
1 Einstieg in C
1.1 Übersicht zu C ![top](common/15x15leer.gif)
![Zur vorigen Überschrift](common/15x15leer.gif)
Mit C lernen Sie eine Programmiersprache, die auf fast allen Betriebssystemen zur Verfügung steht. Besser noch, anders als bei vielen anderen Sprachen (beispielsweise BASIC) steht Ihnen auf den verschiedensten Plattformen eine genormte Standard-C-Bibliothek zur Verfügung. Dank dieser einheitlichen Implementierung und der sehr guten Geschwindigkeit der damit erstellten Programme ist und bleibt C wohl noch für eine sehr lange Zeit eine sehr populäre Sprache – und das sowohl im kommerziellen als auch (vor allem) im Open-Source-Bereich.
C wird auch liebevoll als High-Level-Assembler bezeichnet. Dies resultiert auch daher, dass der Kern (besser bekannt als Kernel) aller gängigen Betriebssysteme in C (und natürlich Assembler) geschrieben wurde – weshalb sich C hervorragend zur Systemprogrammierung eignet.
Dank einer einfachen Struktur und des geringen Umfangs der Sprache gestaltet sich die Portierung eines C-Compilers auf andere neue Prozessorplattformen im Vergleich mit anderen Sprachen weniger aufwendig, weshalb sich der Aufwand vom kleinsten Mikrocontroller bis zum High-End-Rechner immer lohnt. Somit können Sie sich sicher sein, dass Sie – egal für welche Plattform Sie programmieren – immer einen C-Compiler dafür bekommen, und somit bleibt Ihnen auch eine prozessorspezifische Programmierung in Assembler erspart. Meistens können Sie Ihre Anwendung, die Sie für ein bestimmtes System geschrieben haben, (mit kleinen Änderungen) auf eine andere Plattform übernehmen.
Hinweis |
Um keine Missverständnisse aufkommen zu lassen: Mit »auf andere Plattformen übernehmen« ist der Quellcode gemeint. Wenn bei Programmiersprachen die Rede von »portabel« ist, ist gewöhnlich der reine Quelltext gemeint. Die Objektdateien bzw. die ausführbare Datei sind nicht mehr auf andere Systeme portierbar. Sie müssen also den Quelltext auf der anderen Plattform erneut übersetzen. |
Und dass die Programme, die in C geschrieben sind, dann auch noch einen verhältnismäßig geringen Umfang haben (nur Assembler-Programme sind kleiner), macht C zu einer sehr interessanten Sprache in den Bereichen Embedded Systems und Mikrocontroller-Programmierung, wo Speicherplatz sehr kostbar ist.
Trotzdem will ich hier nichts schönreden. C zu können und zu verwenden hat in vielen Bereichen erhebliche Vorteile gegenüber anderen Sprachen – Sie lernen also hier in keiner Weise etwas Überflüssiges –, aber sofern Sie sich intensiver mit der Anwendungsentwicklung auseinandersetzen wollen bzw. müssen, werden Sie über kurz oder lang nicht um eine objektorientierte Programmiersprache wie C++, Java oder C# herumkommen. Der Vorteil von objektorientiertem Code besteht in einer besseren Wartbarkeit, einer Entwurfsunterstützung und einem besseren Abstraktionsniveau. Allerdings sollte der Umstieg von C auf C++ (oder auch Java) keine allzu große Hürde sein, da die Sprache C++ aus C hervorgegangen ist und um die Möglichkeiten der objektorientierten und generischen Programmierung erweitert wurde.
Ein C-Programm wird gewöhnlich mithilfe eines Compilers aus einer oder mehreren einfachen Textdateien zu Objektcodedateien übersetzt. Mehrere Objektcodedateien wiederum werden anschließend von einem Linker (auch Binder genannt) zu einer ausführbaren Datei gebunden. Jedes ausführbare C-Programm besitzt eine Hauptfunktion (in C wird sie main() genannt). Natürlich können Sie auch eigene Bibliotheken erstellen und diese in einem Archiv zusammenfassen. Bibliotheken wiederum können Sie bei einem späteren Bindevorgang des Linkers wieder verwenden, damit diese zum Programm hinzugebunden werden.
Ihre Meinung
Wie hat Ihnen das Openbook gefallen? Wir freuen uns immer über Ihre Rückmeldung. Schreiben Sie uns gerne Ihr Feedback als E-Mail an kommunikation@rheinwerk-verlag.de.