17.01.2014 Aufrufe

Softwareentwicklung in C - ASC

Softwareentwicklung in C - ASC

Softwareentwicklung in C - ASC

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

3.1 Hello World – das erste Beispiel 25<br />

• a.out ist nun wirklich nicht der tollste Programmname, den man sich<br />

vorstellen kann. Vor allem, wenn man mehrere Programme <strong>in</strong> e<strong>in</strong>- und<br />

demselben Verzeichnis stehen hat, dann überschreiben sie sich beim Compilieren<br />

gegenseitig. Das ist garantiert nicht im S<strong>in</strong>ne des Erf<strong>in</strong>ders, daher<br />

gibt es beim C-Compiler die Option -o , um das zu verh<strong>in</strong>dern.<br />

Ruft man also<br />

gcc -o hello_world hello_world.c<br />

auf, dann bekommt man als Ergebnis e<strong>in</strong> Executable, das hello_world<br />

heißt.<br />

Anm: Unter MS-W<strong>in</strong>dows xx muss der Compileraufruf<br />

gcc -o hello_world.exe hello_world.c<br />

heißen, da dort alle Executables die Extension .exe haben müssen.<br />

Damit lässt sich’s schon besser leben. Natürlich muss man dann auch<br />

hello_world statt a.out aufrufen, um das Programm laufen zu lassen.<br />

Vorsicht Falle: Der Vollständigkeit halber möchte ich noch davor warnen,<br />

dass nicht nur die Programmiersprache C, sondern auch das Unix-<br />

Filesystem case-sensitive ist. Aus diesem Grund wird bei e<strong>in</strong>em Aufruf<br />

Hello_World statt hello_world bestenfalls festgestellt werden, dass das<br />

Programm nicht gefunden wird. Unter den verschiedenen Versionen von<br />

MS-W<strong>in</strong>dows ist dies nicht der Fall, obwohl auch dort Filenamen mit Großund<br />

Kle<strong>in</strong>buchstaben gespeichert werden. Nur wird dieser Unterschied (leider!)<br />

bei allen File-Operationen ignoriert.<br />

• gcc versteht viele verschiedene Optionen und Komb<strong>in</strong>ationen daraus. Wo<br />

notwendig, werden sie hier im Buch erwähnt. Damit man sich nicht alle<br />

immer merken muss, unterstützt gcc auch die besondere Option --help.<br />

Ruft man also gcc --help auf, so erhält man e<strong>in</strong>e Liste aller möglichen<br />

Optionen und e<strong>in</strong> paar erklärende Worte dazu. Überhaupt gilt generell für<br />

alle Programme unter Unix: Die Optionen -h und/oder --help liefern e<strong>in</strong>e<br />

kurze Hilfe zu Parametern und zu anderen wissenswerten D<strong>in</strong>gen. Außerdem<br />

gibt es noch das Programm man (steht für Manual) , mit dem man<br />

ausführlichere Hilfe bekommen kann. Z.B. erfährt man mit man gcc jede<br />

Menge zum C-Compiler. Zugegeben, die Manual Pages zum C-Compiler<br />

s<strong>in</strong>d extrem umfangreich, behandeln sie doch gleich <strong>in</strong> e<strong>in</strong>em Aufwaschen<br />

gcc und g++ (den C++-Bruder von gcc). Zu anderen Programmen fällt<br />

die Man-Page schon etwas kürzer aus.<br />

Auch zu allen C-Funktionen gibt es normalerweise <strong>in</strong>stallierte Man-Pages<br />

auf den Masch<strong>in</strong>en. Z.B. kann man sich ansehen, was pr<strong>in</strong>tf alles kann,<br />

<strong>in</strong>dem man man 3 pr<strong>in</strong>tf aufruft. Was bedeutet nun diese om<strong>in</strong>öse 3 hier<br />

mitten im Aufruf? Ne<strong>in</strong>, falsch geraten, das ist ke<strong>in</strong> Tippfehler. In Unix<br />

s<strong>in</strong>d die Man-Pages <strong>in</strong> mehrere logisch zusammengehörige Blöcke unterteilt,<br />

denen Zahlen zugeordnet s<strong>in</strong>d. Alles zum Thema C steht <strong>in</strong> Block<br />

3. Normalerweise braucht man e<strong>in</strong>en Block nicht anzugeben, da diese der<br />

Reihe nach durchsucht werden, bis etwas gefunden wird. Unglücklicher-

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!