Hallo und willkommen zurück.
In diesem Vortrag möchte ich darüber sprechen Einige der Dienstprogrammfunktionen, die
von der c-Standardbibliothek bereitgestellt werden.
Und diese machen genau das, was Sie tun würde nur
einige Dienstprogramme denken, einige allgemeine allgemeine Funktionen verschiedene Dinge zu tun.
Um die Dienstprogrammfunktionen zu verwenden, Sie sind normalerweise in der Standardbibliothek. h.
Sie fügen also diese Header-Datei hinzu.
Einige der Funktionen, die ich gehe nur nützliche Funktionen zu beschreiben.
Einer ist der Absolutwert abs.
Gibt das Absolute zurück Wert eines Arguments.
Absolutwert ist Umwandlung in ein positives.
Also, wenn Sie ein Negativ abgeben oder so weiter, es gibt Ihnen
den positiven Wert zurück.
Es gibt eine Funktion namens exit.
Ich habe das ein bisschen benutzt in unserer Hauptfunktion.
Es wird eine ganze Zahl benötigt, normalerweise a Rückgabewert und normalerweise eine
negative Zahl bedeuten, dass ein Fehler vorliegt Eine positive Zahl oder Null bedeutet keinen Fehler
oder eine bedeutet keinen Fehler.
Dies wird beendet das Programm allerdings.
Es wird einfach direkt herausspringen.
Wenn Sie in einer Hauptfunktion sind, Wenn Sie eine Rückgabe durchführen, können
Sie von der Hauptfunktion zurückkehren.
Aber der Ausgang ist normalerweise um das Programm zu schließen.
Es gibt auch einige Konstanten definiert wie Exit-Erfolg und
Exit-Fehler, die Sie verwenden können, wenn Sie möchten keine Zahlen verwenden.
Andere verwandte Routinen in der Die Bibliothek, auf die
Sie möglicherweise verweisen möchten, ist beim Beenden wichtig.
Und Sie werden dies in ziemlich viel sehen Bit-C-Programm, insbesondere abbrechen.
Abbruch ist, wenn es welche gibt Art von Fehler wie wenn Sie nicht malloc
können, können Sie abort nennen, und Sie können es auf Signal einstellen.
Das Gute am Abbruch ist es wird eine
Kerndatei in Abhängigkeit vom Signal generiert.
Core-Datei kann geholfen werden Debug für weitere Informationen.
Aber beenden Sie Abbruch und atexit sehr nützliche Funktionen, die normalerweise aufgerufen werden, wenn ein
schwerwiegender Fehler auftritt.
Es gibt eine Get-Umgebung Funktion, mit der Sie Umgebungsvariablen
lesen können.
Umgebungsvariablen sind normalerweise mit Ihrer Umgebung verbunden.
Sie sind eine Variable, die Sie
kann es wie eine globale Variable verwenden, die Sie verwenden können überall auf dem Betriebssystem.
Wenn es also Linux ist, haben Sie eine Umgebungsvariable für Ihren Pfad.
Es gibt Umgebungsvariablen in Fenster, um Pfade anzugeben oder wo sich
verschiedene Programme befinden oder nur generische globale Variablen.
Sie können eine Umgebungsvariable festlegen und dann können Sie es mit
dieser Funktion get Umgebung lesen.
Und das wird darin gelesen Umgebungsvariable und Sie können es in
Ihrem Programm verwenden.
Also wieder Dinge wie Pfad alles die mit Ihrer Shell
oder Ihrer Umgebung zusammenhängen.
Get-Umgebung ist sehr nützlich.
Es gibt eine qsort-Funktion.
Dadurch wird das Datenarray sortiert zeigt durch das void pointer array.
Es gibt also ein Array, das als erster Parameter genommen und
es wird es sortieren.
Es wird n Elemente in der geben Array, jede Größe beißt in der Länge.
Und das n und die Größe sind von der Typgröße t.
Es gibt also vier Variablen das geht zu dieser Funktion.
Aber der Qsort ist nett, weil Sie können ein Array sortieren.
Das vierte Argument ist a Zeiger auf die Funktion, die Sie
zum Sortieren verwenden möchten.
So kann es komplizierter werden.
Aber diese Funktion ist sehr nützlich, wenn Sie zwei Elemente in
einem Array vergleichen müssen.
Sie können die Zeiger übergeben zu den Elementen, mit
denen Sie vergleichen möchten.
Wir haben eine Zufallsfunktion.
Wir verwenden dies in einem von unsere herausforderungen rand.
Dies erzeugt eine Zufallszahl.
Sie können einen Startwert angeben, wenn Sie möchten in einer
anderen Funktion oder es wird nur eine Zufallszahl zwischen a generiert Minimalwert von 3276
und Minimalwert Null zufällig, Maximalwert 3276.
Rand max ist also in der Standardbibliothek definiert. h.
Sie werden dies oft mit dem sran verwenden Funktion, die einen Samen liefert.
Ein Samen kann einen bestimmten Bereich liefern.
Es wird die Zahlen machen vielleicht auch zufälliger.
Also sät es die Zufallszahl Generator zu einem vorzeichenlosen int.
System ist eine Funktion, die Sie können aufrufen, um Systemaufrufe auszuführen.
Ich habe es in der Klasse benutzt, um eine Pause zu machen.
Aber alles, was Sie von der laufen können Konsole, wie das Ändern von Verzeichnissen,
das Ändern von Berechtigungen, wenn Sie eingeschaltet sind Wenn Sie unter Linux andere Programme ausführen, können Sie
dies alles über das System tun.
Und so wird das eigentlich Führen Sie einen Befehl in Ihrer Shell aus, unabhängig davon, ob es
sich um die Eingabeaufforderung dos oder handelt Sie verwenden eine Shell unter Linux.
Dieser Befehl wird ausgeführt.
So könnte man zum Beispiel sagen System make dir und es erstellt ein Verzeichnis von allem,
was Sie angegeben haben in dem Argument, dir zu machen.
Es ist alles im Inneren doppelt Anführungszeichen, also braucht es eine Zeichenfolge.
Das System ist auch sehr, sehr nützlich.
Die Assert-Bibliothek ist nützlich zum Debuggen.
Wir hatten keine Gelegenheit zu reden viel über behaupten, aber ich
wollte es kurz erwähnen.
Es ist eine Bibliothek, die behauptet wird. h und es ist eine, die beim Debuggen hilft.
Die Behauptung besagt also, dass etwas wahr ist.
So können Sie behaupten, innen Ihren Code, um sicherzustellen, dass etwas vor Ihnen
wahr ist Fahren Sie mit der nächsten Codezeile fort.
Es gibt ein Assert-Makro, das Sie werden verwenden und es braucht ein
Argument wie einen inneren Ausdruck.
Wenn der Ausdruck zu ausgewertet wird false, das Assert-Makro schreibt eine Fehlermeldung
in den Standardfehler stream und ruft die Abbruchfunktion auf.
Ihr Programmierer wird also beendet.
Sie können also etwas setzen in Ihrem Code, der im
Grunde so etwas sagt.
Man kann sagen, z ist gleich x mal x minus x mal y.
Und dann können Sie behaupten, dass z ist größer oder gleich Null.
Wenn das false zurückgibt, wird Ihr Programm wird beendet.
Andernfalls wird es ausgeführt die nächste Codezeile.
Es ist also so, als würde man wahr machen Annahmen in Ihrem Code.
Sie möchten das sicherstellen Bestimmte Werte sind so, wie sie sind, bevor
Sie mit dem nächsten fortfahren.
Dies stellt im Wesentlichen sicher, dass Sie sind nicht so, als würden Sie durch Null teilen,
da Sie keinen Nullwert hatten als du diese Multiplikation gemacht hast.
Sie werden oft behaupten, sich im Inneren zu behaupten von c Programmen zum Debuggen.
Andere nützliche Header-Dateien, die Vielleicht möchten Sie Folgendes untersuchen: Zeit. h.
Zeit. h hat alle möglichen Unterschiede Funktionen und Makros zur
Unterstützung verschiedener Datums- und Uhrzeitangaben.
Normalerweise wird eine Zeit t struct zurückgegeben.
Aber Sie können das Datum bekommen.
Sie können die Zeit bekommen.
Errno. h oder Fehlernummer. h.
Dies definiert Makros für Meldung von Fehlern.
Oft wieder verwendet für Besseres Debuggen und Melden
spezifischer Fehler.
Also viele Funktionen du Verwendung in Standardbibliotheken.
Wenn sie fehlschlagen, geben sie möglicherweise eine Nummer zurück für einen bestimmten Fehler, und es ist wichtiger, wenn Sie
einen Socket verwenden funktioniert andere Dinge, weil es viele
verschiedene Fehler geben kann.
Manchmal ist es nützlich zu wissen Was los
ist, anstatt nur zu sagen, dass es einen Fehler gibt, ist nicht Es ist sehr hilfreich zu
sagen, dass eine bestimmte Art von Fehler sehr nützlich ist.
So können Sie Fehlernummern erhalten Verwenden Sie diese Option, um beim weiteren
Debuggen zu helfen.
Gebietsschema. h.
Es gibt eine Reihe von Funktionen
und Makros in diesem Header zum Formatieren unterschiedlich Währungen und Währungseinheiten.
Signal. h.
Dies ist normalerweise nützlich zur Programmbeendigung zur Erzeugung
unterschiedlicher Signale.
Signale sind kein Thema, das wir behandeln Dies kann
hilfreich sein, wenn Sie die Abbruchspezifikation aufrufen bestimmte Signale, während das Programm abstürzte oder
das Programm beendet wurde.
Und Sie können diese verwenden, wenn Sie Verstehe Signale, die du auch in
deiner Kerndatei verwenden kannst.
Stdarg. h.
Dies definiert verschiedene Einrichtungen, die Aktivieren Sie die Übergabe einer variablen
Anzahl von Argumenten an eine Funktion, varargs.
Wir verwenden vargs und printf, haben es aber nicht getan Erstellen Sie unsere eigenen Funktionen von arg.
Es ist ein fortgeschritteneres Thema.
Dies sind jedoch grundlegende Header-Dateien Das ist möglicherweise hilfreich, um
Zeiten, Fehlernummern usw. abzurufen.
Dies sind gute Dienstprogrammfunktionen.
Ich hoffe das war hilfreich.
Vielen Dank.