Dan Gookin - C für Dummies

Здесь есть возможность читать онлайн «Dan Gookin - C für Dummies» — ознакомительный отрывок электронной книги совершенно бесплатно, а после прочтения отрывка купить полную версию. В некоторых случаях можно слушать аудио, скачать через торрент в формате fb2 и присутствует краткое содержание. Жанр: unrecognised, на немецком языке. Описание произведения, (предисловие) а так же отзывы посетителей доступны на портале библиотеки ЛибКат.

C für Dummies: краткое содержание, описание и аннотация

Предлагаем к чтению аннотацию, описание, краткое содержание или предисловие (зависит от того, что написал сам автор книги «C für Dummies»). Если вы не нашли необходимую информацию о книге — напишите в комментариях, мы постараемся отыскать её.

C erfreut sich als Klassiker unter den Programmiersprachen großer Beliebtheit, denn es steckt nach wie vor in vielen Betriebssystemen, Schnittstellen und Treibern, aber auch in Compilern und neueren eingebetteten Systemen. Wer C lernen und dabei auch noch Spaß haben möchte, sollte zu diesem Buch vom Urvater der Dummies, Dan Gookin, greifen. Mit viel Humor und vielen anschaulichen Beispielen macht er die Programmiersprache C lebendig.

C für Dummies — читать онлайн ознакомительный отрывок

Ниже представлен текст книги, разбитый по страницам. Система сохранения места последней прочитанной страницы, позволяет с удобством читать онлайн бесплатно книгу «C für Dummies», без необходимости каждый раз заново искать на чём Вы остановились. Поставьте закладку, и сможете в любой момент перейти на страницу, на которой закончили чтение.

Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Es gibt da noch eine kleine Unschönheit mit fgets: Diese Funktion liest nämlich netterweise gleich noch die картинка 86-Taste mit. Am Ende eines mit fgetsgelesenen Strings findet man daher im Regelfall noch ein \n. Das ist ein wichtiger Unterschied zu scanf. Damit müssen wir zunächst einfach leben, ich komme in Kapitel 10darauf zurück.

put – put – putputput – puts

Im Grunde ist putseine vereinfachte Version der Funktion printf. putsgibt Texte am Bildschirm aus, aber ohne die ganzen Formatierungszaubereien von printf. putsist einfach die schlichte Variante von »Ja, ich gebe Text aus«. Im Kasten »Die Funktion puts (Text ausgeben)« erfahren Sie etwas über den Aufbau.

картинка 87Ein großer Unterschied: putsfügt am Ende des Strings immer automatisch eine neue Zeile ein, es wird also immer ein \nausgegeben, auch wenn Sie es nicht schreiben. Dies lässt sich nicht umgehen.

putskann auch verwendet werden, um eine Stringvariable auszugeben. In diesem Fall steht statt der Stringkonstanten in Anführungszeichen einfach der Name der Stringvariablen an dieser Stelle.

Die Funktion puts (Text ausgeben)

Die Funktion putsgibt Text auf dem Bildschirm aus – eine limitierte Version von printfohne die Formatierungsanweisungen:

puts(" text ");

putsfolgt ein Paar runde Klammern, dazwischen steht der auszugebende text in Anführungszeichen, den Klammern folgt wieder unser Semikolon, da auch putseine Anweisung ist.

Noch eine doofe Spielerei

Damit Sie sehen, wie putsarbeitet, schreiben wir das Programm Stop.c. Ja, es ist ziemlich doof, aber Verzeihung, Sie lernen hier ja noch.

#include int main() { puts("Kann nicht aufhoeren, der Ausschalter klemmt!"); return 0; }

Listing 3.9:Name: Stop.c

Eingeben, kompilieren, linken, starten. Das Programm erzeugt die folgende Ausgabe:

Kann nicht aufhoeren, der Ausschalter klemmt!

Sie müssen am Ende des Strings kein \nfür eine neue Zeile einfügen, putsmacht das immer automatisch (wenn Sie das nicht wollen, müssen Sie printfbemühen).

Genau wie printfbringt putseine Ausgabe auf den Bildschirm. Der Text wird von Anführungszeichen umschlossen und dann von runden Klammern umzingelt.

Genau wie bei printfmuss man \"verwenden, wenn man im String irgendwo ein einfaches Anführungszeichen "einsetzen will. Für die anderen Zeichen nach einem \gilt das übrigens auch.

Kümmern Sie sich nicht um die %-Zeichen, putsersetzt in der Ausgabe keine Platzhalter durch Variablen. Es kann wirklich nur Texte ausgeben.

картинка 88Es gibt ebenfalls eine Funktion mit dem Namen gets. Mit dieser könnten Sie Strings von der Tastatur einlesen. Könnten Sie, sollen Sie aber nicht:

gets(idiot);

Denn hier wird keine Stringlänge angegeben, und bei sehr langen Eingaben über die Array-Länge hinaus zerschießen Sie Ihren Speicher! getswurde als so gefährlich eingestuft, dass es im aktuellen C-Standard als deprecated bezeichnet wurde – veraltet . Leider finden Sie diese Funktion immer noch sehr oft in älteren C-Programmen oder Büchern.

puts und Variablen

putskann Variablen ausgeben, aber nur eine pro Zeile. Wieso das? Nun ja, weil putsimmer auf diesem \n-Zeichen bei der Ausgabe besteht. Auch das Einbauen einer Variablen in einen anderen String gelingt damit nicht.

Als Beispiel nehmen wir mal an, dass Sie den Inhalt der Variablen idiotin eine einzige Zeile schreiben wollen:

puts(idiot);

картинка 89Verwenden Sie putsniemals mit anderen Variablen außer Stringvariablen. Das Ergebnis wird seltsam sein.

Sie müssen eine Stringvariable zuerst durch Verwendung des Schlüsselworts chardeklarieren. Danach müssen Sie die Variable mit etwas füllen, was man zum Beispiel mit fgetsbewerkstelligen kann. Nur dann ergibt auch die Ausgabe mit putseinen Sinn.

Die Funktion puts (Stringvariablen ausgeben)

Die Funktion putskann den Inhalt von Stringvariablen auf dem Bildschirm ausgeben – eine limitierte Version von printfohne die Formatierungsanweisungen, da putsnur den Inhalt einer Variablen darstellen kann:

puts( var );

putsfolgt ein Paar runde Klammern, dazwischen steht die auszugebende Stringvariable var , den Klammern folgt wieder ein Semikolon, da auch putseine Anweisung ist.

Licht! Kamera! Action! puts und fgets die Zweite

Im folgenden Programm wurde gegenüber InsultSicher.ceine kleine Veränderung durchgeführt, die printf-Anweisung wurde entfernt und durch putsersetzt.

#include int main() { char idiot[20]; puts("Name eines Idioten: "); fgets(idiot, 20, stdin); puts("Yep, ich denke auch, dass %s ein Idiot ist.\n", idiot); return 0; }

Listing 3.10:Name: Insult2.c

Also los, ändern Sie die Zeilen mit dem printfaus dem Original so ab, dass Sie das Programm Insult2.cerhalten. Speichern Sie das Programm unter dem neuen Namen.

Kompilieren Sie das Programm nun und starten Sie es – wenn Sie können! Falls es sich fehlerfrei kompilieren ließe – falls –, würden Sie folgende Ausgabe sehen:

Name eines Idioten: Karl Klammer Yep, ich denke auch, dass %s ein Idiot ist.

Tja, wer ist dieser %seigentlich?

Aber zum Glück wird Ihr Compiler wahrscheinlich aufgesprungen sein und hat Ihnen einen Fehler an den Kopf geworfen, der besagt, dass putsnur ein Argument hat und kein weiteres mehr verkraftet. Genauer, dass das idiotin putszu viel ist. putsist nicht nur einfacher gestrickt als printf, das %sfunktioniert nicht; es kann auch mit angehängten Variablen nichts anfangen.

Wann nimmt man puts und wann printf?

Nehmen Sie puts, wenn Sie einfach eine Zeile mit Text ausgeben wollen.

Nehmen Sie puts, wenn Sie den Inhalt einer Stringvariablen in einer eigenen Zeile ausgeben wollen.

Verwenden Sie printf, wenn Sie den Inhalt einer Stringvariablen in einen anderen String einbetten wollen und das Ergebnis ausgegeben werden soll.

Verwenden Sie printf, wenn Sie mit mehr als einer Variablen gleichzeitig arbeiten wollen.

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Похожие книги на «C für Dummies»

Представляем Вашему вниманию похожие книги на «C für Dummies» списком для выбора. Мы отобрали схожую по названию и смыслу литературу в надежде предоставить читателям больше вариантов отыскать новые, интересные, ещё непрочитанные произведения.


Отзывы о книге «C für Dummies»

Обсуждение, отзывы о книге «C für Dummies» и просто собственные мнения читателей. Оставьте ваши комментарии, напишите, что Вы думаете о произведении, его смысле или главных героях. Укажите что конкретно понравилось, а что нет, и почему Вы так считаете.

x