Unterschied zwischen C/C++ - Laufzeitbibliothek und C/C++ - Standard-Bibliothek
Könnt Ihr mir sagen, den Unterschied zwischen Ihnen?
Übrigens, gibt es etwas namens C++ - Bibliothek oder C-Bibliothek?
- siehe Details unter: letrungthang.blogspot.com/2011/04/... hoffe, hilfreich
- Es ist nur eine Namenskonvention. Der ISO-C-Bibliothek, die eine C - oder C++ - compiler muss Schiff mit genannt wird die C-runtime-Bibliothek. Die ISO C++ - standard-library (STL) ist eine C++ - Bibliothek nur verwendet, Teile der C-Laufzeit-Bibliothek. Die STL-Bibliothek ist nicht zwingend vorgeschrieben.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Den
C++ Standard Library
undC Standard Library
sind die Bibliotheken, die die C++ - und C-Standard definieren, der bereitgestellt wird, um C++ - und C # - Programme zu verwenden. Das ist eine gemeinsame Bedeutung dieser Worte, die ich noch nie gesehen eine andere definition davon, und C++ selbst definiert es als diese:C++ Runtime Library
undC Runtime Library
sind nicht so gleichmäßig verwendet. Einige sagen, ein runtime-Bibliothek ist der Teil, der ein Programm verwendet bei Laufzeit (wie der code implementiertstd::type_info
oder die code-Unterstützung von signal-Handlern) im Gegensatz zu den Sachen, die Sie nur zur compile-Zeit (wie makro-Definitionen). Andere Leute sagen, dass eine Laufzeit-Bibliothek ist eine, die ist mit einem Programm zur Ladezeit dynamisch im Gegensatz zu statisch zur compile-Zeit, obwohl diese Verwendung ist sehr selten. shared library oder Dynamic Link library, sind bessere Bedingungen für, die.C++ Library
undC Library
sind sehr weit gefasst. Sie nur bedeuten, dass eine Bibliothek in C++ geschrieben ist und/oder C.Den oben beschränkt sich nicht nur auf C++ und/oder C) Es sind die python-Bibliotheken und es ist ein python - Standard-Bibliothek zu.
Laut https://en.wikibooks.org/wiki/C_Programming/Standard_libraries#Common_support_libraries, es ist ein sehr wichtiger Unterschied zwischen der Standard-Bibliothek und-Laufzeit-Bibliothek. Während die Standard-Bibliothek definiert Funktionen, die sind (immer) zur Verfügung, um die Programmierer (aber nicht Teil der (ursprünglichen) Spezifikation der Programmiersprache, zumindest in C), die Laufzeit-Bibliothek enthält Funktionen, die notwendig sind, um tatsächlich ein Programm zu starten, auf einer bestimmten Plattform (und sind Plattform-spezifisch /vendor-specific).
Beispielsweise printf() ist Teil der C-Standard-Bibliothek, während das Programm startup (das ist in vielen Fällen unsichtbar für den Programmierer) implementiert ist, die in der Laufzeit-Bibliothek. So zum Beispiel, könnten Sie schreiben Sie ein C-Programm, das nicht die Standard-Bibliothek, aber Sie müssen immer die Laufzeit-Bibliothek, da andernfalls Ihr Programm konnte nicht ausgeführt werden. Aber um ehrlich zu sein, würde dies wenig nützen, weil ein C-Programm ohne die Standard-Bibliothek konnte nicht tun-Eingang/- Ausgang, so konnte es Ihnen nicht sagen, etwas über seine beeindruckende Ergebnisse.
Was führt zu Verwirrung über den Unterschied zwischen diesen beiden ist:
C++ standard-Bibliothek ist ein Begriff, den zu definieren der standard-Bibliothek, die eine Mindest-konformen compiler/toolset haben sollte. C++ - Laufzeit-Bibliothek ist die Bibliothek zusammen mit dem toolset zu der standard-Bibliothek Funktionen, und wahrscheinlich einige interne Sachen der compiler benötigen. In der Tat, diese Begriffe sind oft austauschbar.
Einführung
C/C++ - Standard-Bibliothek ist die Implementierung aller erforderlichen Funktionen benötigt, um zu erreichen, was ISO-C/C++ - standard erfordert. (Wikipedia definition von einen C++ Standard-Bibliothek)
Einen Runtime Library ist die Implementierung einer Reihe von Funktionen, die in der Regel angeboten in form von SDK, die erforderlich sind, installiert werden oder statisch gelinkt zu lassen, ein Programm mit diesem SDK ausgeführt werden, nachdem alle, die es brauchen könnten, zu verwenden, die SDK. Aus diesen Gründen Runtime-Bibliothek ist in der Regel, die strikt mit dem SDK verwendet und der compiler-version verwendet. (Wikipedia definition eines generischen Laufzeit-Bibliothek)
C/C++ - Laufzeit-Bibliothek
Einen C/C++ - Laufzeit-Bibliothek muss daher enthalten alle erforderlichen Funktionen ausführen, was erforderlich ist, von der Standard-Bibliothek (header-nur Funktionen der spezifischen Standard-Bibliothek Implementierung kann ausgeschlossen werden, weil Sie gelöst sind innerhalb des Programms selbst) plus eine Reihe von Funktionalitäten angeboten, die von der SDK der konkreten Umsetzung (wieder-Funktionalitäten angeboten, die als header-nur ausgeschlossen werden kann).
Der Microsoft-Fall
Vor MSVC140: aktuellen Microsoft VC++ - Runtime verwendet werden, um eine installierbare version des C/C++ - Runtime (VCRedist), die version war die gleiche für alle Betriebssysteme.
Ab MSVC140: ab dem nächsten MSVC140 compiler, die Runtime-Bibliothek wurde in zwei Teile aufgeteilt:
Hier ist ein link zu MS-C-Runtime-Referenz-Dokumentation.
Hier ist ein link zu MS-C-Runtime-download-Seite und installieren Anleitung.
C++ - Standard-Bibliothek besteht aus zwei wesentlichen teilen, nämlich der Standard-Template-Library (STL) und die Laufzeit-Bibliothek. STL implementiert ist, in header-Dateien nur, während eine Implementierung der common language runtime Bibliothek enthält header-Dateien und binaries (d.h., .lib und .dll-Dateien auf Windows-Plattformen).
C++ runtime library enthält Funktionen und Objekte geliefert, die in C++, wie cout, fstream sind und so weiter.
C-Laufzeit-Bibliothek enthält C-Funktionen wie printf, scanf, fopen, und so weiter.
Die standard-Bibliothek ist eine bestimmte Menge von definierten Namen und Header als
definiert im C++ - standard-Dokument, eine runtime-Bibliothek ist ein blob
binary Zeug, das als Teil des kompilierten Programm aber nicht
in Ihrem Programm ausführbare Dateien, weil es so Häufig gebraucht wird.
Stattdessen, diejenigen Teile der Funktionalität sind, die auf der host-Maschine
(obwohl möglicherweise müssen Sie Ihren Kunden zu installieren eine aktualisierte
Laufzeit, wenn Sie ein älteres service-pack), so dass Sie sich in
Ihr Programm nur auf "runtime".
Ref. links:
http://msdn2.microsoft.com/en-us/library/cscc687y(VS.80).aspx
http://msdn2.microsoft.com/en-us/library/59ey50w6(VS.80).aspx
Einen anderen Aspekt, der vielleicht nicht genau der Fall von C/C++, aber laut wikipedia: Laufzeit-Bibliothek
Knappe:
Runtime-Bibliothek verwendet werden soll, indem der compiler und die standard-Bibliothek verwendet werden soll, die durch den Programmierer.