libwayne.

Libwayne ist eine Bibliothek von angemessenen abstrakten Datentypen und Algorithmen, die in C geschrieben wurden.
Jetzt downloaden

libwayne. Ranking & Zusammenfassung

Anzeige

  • Rating:
  • Lizenz:
  • LGPL
  • Preis:
  • FREE
  • Name des Herausgebers:
  • Wayne Hayes
  • Website des Verlags:
  • http://www.cs.toronto.edu/~wayne/libwayne/

libwayne. Stichworte


libwayne. Beschreibung

libwayne ist eine Bibliothek von vernünftigerweise abstrakten Datentypen und Algorithmen, die in C geschrieben wurden. Libwayne ist eine Bibliothek von vernünftigerweise abstrakten Datentypen und Algorithmen, die in C.Die Algorithmen in Libwayne geschrieben sind, sind keineswegs Original. Viele von ihnen werden von Lehrbüchern auf Datenstrukturen und Algorithmen übernommen, und ich habe sie einfach in C übersetzt. Sie umfassen effiziente und korrekte Routinen für Prioritätswarteschlangen, ereignisgesteuerte Simulationen, Warteschlangen, Stapel, Binärbäume, Ganzzahlen, Grafiken ( Die Node-Edge-Art), einige Combinatorics-Routinen, ODE-Integrationsroutinen, ein einfaches Statistikpaket und eine Matrix-Vektor-Bibliothek. Viele der Routinen (Heap, Stack, Warteschlange, Bintree) können mit willkürlichen Objekten arbeiten, nicht nur ganze Zahlen. Vergleiche erfolgen mit Zeigern auf Vergleichsfunktionen, ähnlich wie den Standard QSort von ANSI C. Diese Bibliothek soll nicht vollständig sein; Ich schreibe die Routinen, wie ich sie brauche, aber nur hochwertiger Code geht in libwayne.one, was viele Leute mich fragen, ist `Warum haben Sie nicht C ++ verwendet? Das, obwohl ich kein C ++ -Sonderexperte bin (eigentlich das einzige, das ich nicht in vertrauten Details gelernt habe, ist Vorlagen), weiß ich genug C ++, um zu erkennen, dass es nicht das SE-ALLE, END-ALLE PROGRAMMING-Sprachen ist. In der Tat beginnt es nach mehreren Jahren von C ++. Es beginnt bereits ein langsames Verblassen in die Geschichte, wobei Java sein Nachfolger ist - und kein sehr gutes, dabei das Risiko, sich wie das 40-50-Jahres-Jahr zu klingen Olds da draußen, die immer noch darauf bestehen, dass FORTRAN eine gute Sprache für alles ist, ich werde ein 30-etwas sein, das darauf besteht, dass, bis etwas Besseres kommt, C ist immer noch eine gute Allzwecksprache, in der schwere, Daten schreiben, um schwere Daten zu schreiben -Struktur intensive Programme. Ich glaube, es war Dennis Ritchie, der etwas sagte, "C ist selten die beste Sprache für eine bestimmte Aufgabe, aber es ist oft der zweitbeste," die Implikation ist, dass es besser ist, eine Sprache zu lernen, die für alles zweitbeste ist, was für alles zweitbeste ist, als eine neue Sprache für jede Programmieraufgabe zu lernen. (Man könnte das Gleiche von Englisch sagen.) Ich begann Libwayne, als mir klar wurde, dass ich ständig kleine Code-Bits neu schrieb, die wichtige Dinge taten, die im C-Standard sein sollten, aber nicht. Wie oft haben Sie zum Beispiel einen schriftlichen Code? ); Ausfahrt (1);} Ich habe es satt. Darüber hinaus wollte ich oft mehr darüber erfahren, warum mein Programm fehlgeschlagen ist. Also habe ich tödlich geschrieben. Hier ist sein Prototyp: Void tödlich (char * fmt, ...); / * Erzeugt einen Assertion-Fehler * / es verwendet Varargs, sodass Sie eine beliebige Liste der Ausgabeargumente wie Printf übergeben können, es erzeugt jedoch ein Assertion-Fehler, sodass Sie, wenn Sie ihn unter einem Debugger ausführen, das Programm nett ansehen es stirbt. Es stellte sich als erst die erste Funktion, die ich für Libwayne schrieb, und es wurde in eine Datei namens "misc.c" gebracht, die ich angefangen habe, einschließlich in den meisten Code, den ich geschrieben habe. Ein weiteres frühe Mitglied der Bibliothek war MalRoc, der tödlich ruft, wenn der Standard-Malloc fehlschlägt misc.c in ein Objektmodul. Das war ungefähr 1993. In dieser Zeit begann ich, zu erkennen, dass wir zumindest in C einen Weg brauchen, um "Objekte" auf einigermaßen transparente Weise zu passieren, aber manchmal möchten wir Zeiger als ganze Zecker behandeln. Dies macht die Zähne der Menschen (meine eigenen inbegriffen), also habe ich den Voint Datatype erfunden, der ist (Sie erraten es), eine Union von (void *) und (int). Dann fing ich an, wann immer ich, wann immer ich bin brauchte sie. Jedes Stück Libwayne wurde geschrieben, weil ich es brauchte, aber nur Dinge, die ich vorsichtig angenommen habe, um sie gut in Libwayne zu tun. Jeder Algorithmus, der Objekte vergleichen muss, benötigt eine Vergleichsfunktion wie der von der ANSI-Standard-QSort-Routine.


libwayne. Zugehörige Software

Smalloc

SMALOC (Static Memory Puffer Malloc) ist ein idealer Speichermanager für Echtzeit-Linux-Kernel-Module. ...

218

Herunterladen

Einzelgänger

Maverick ist ein Projekt, um ein kostenloses Open Source-Multivalue-Datenbankverwaltungssystem zu erstellen. ...

179

Herunterladen

FormVista

FORMVISTA ist ein offenkundiger, doppelt lizenzierter PHP-Komponenten-Framework für die schnelle Erstellung fortschrittlicher Business-Webanwendungen. ...

132

Herunterladen