Wo findet man die C89 / C90-Standards im PDF-Format?

87

Ich suche nach einer kostenlosen Version des C89 / C90-Standards , kann sie aber nirgendwo finden! Warum ist es so schwer zu finden?

C99- und C11-Standards sind sehr einfach im Internet zu erhalten. Auch in den Fragen zum Stapelüberlauf Wo finde ich die aktuellen C- oder C ++ - Standarddokumente? und der C-Standard, Erhalten des Standards, enthalten nicht das, wonach ich suche.

Die Websuche hat weder geholfen noch Open Standards .

Die Maske
quelle
5
Einen Entwurf des C99-Standards finden Sie unter open-std.org/JTC1/sc22/wg14/www/docs/n1256.pdf (oder den Entwurf C11 ). Ich glaube, der eigentliche Standard kann nicht kostenlos bezogen werden.
PMG
Sie können den Standard bei ISO kaufen . Nur die Entwurfsversionen sind frei verfügbar.
Hristo Iliev
12
Der Grund, aus dem diese Frage geschlossen wurde, ist ungültig. Es wird nicht nach einem Tool, einer Bibliothek oder einer "bevorzugten" externen Ressource gefragt, sondern nach einer kanonischen Spezifikation der betreffenden Sprache.
R .. GitHub STOP HELPING ICE
1
@R ..: Wie wahr. Glücklicherweise wird das Schließen einer Frage nicht gelöscht. Die Anzahl der geschlossenen Fragen, die mir mehr geholfen haben als die erlaubten Fragen, ist, gelinde gesagt, rätselhaft
hört am

Antworten:

96

Hier finden Sie nette HTML-Versionen von C89, C99 und C11 sowie einige der offiziellen Entwürfe von PDF-Dateien, aus denen sie generiert wurden:

http://port70.net/~nsz/c/

Einige andere nützliche direkte Links zu kostenlosen PDF-Dateien der Standards C89 / C90, C99 und C11 sind nachstehend aufgeführt:

C89 / C90: https://www.pdf-archive.com/2014/10/02/ansi-iso-9899-1990-1/ansi-iso-9899-1990-1.pdf

C99: http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1256.pdf

C11: http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1570.pdf

R .. GitHub HÖREN SIE AUF, EIS ZU HELFEN
quelle
9
Alle C-Dokumente dort sind Entwürfe, keine tatsächlichen Standards. Die meisten oder alle C ++ - Dokumente sind ebenfalls Entwürfe. Wenn es sich bei einem von ihnen um tatsächliche Standards handelt, verstoßen sie gegen das Urheberrecht von ISO.
Keith Thompson
6
Ja, ich habe dies in der Antwort erwähnt, wenn auch mit einer mehrdeutigen Sprache, aber die neuesten Entwürfe sind im Allgemeinen mit den veröffentlichten Standards identisch, mit Ausnahme des Deckblatts und dergleichen.
R .. GitHub STOP HELPING ICE
6
..Ist das legal?
Pacerier
1
@ Pacerier, warum ist das nicht legal? Es sieht für mich legal aus = /
Ashish Ahuja
1
Vielen Dank, dass Sie den Entwurf der Standardlinks geteilt haben. Ich mag die Tatsache, dass sie HTML-Dateien verknüpft sind :)
Bharat
6

Es gibt genau einen verbleibenden Ort, an dem Sie noch eine offizielle NON-DRAFT- Version des ursprünglichen ANSI C89-Standards erwerben können. Dieser eine Ort ist Standards Australia. Der Webshop-Link für C89 ist hier:

http://www.techstreet.com/standards/as-3955-1991?product_id=1178768

Lassen Sie sich nicht durch die Tatsache verwirren, dass es 9899: 1990 heißt, denn dies ist nur die ISO-Nummer, die C89 erhalten hat, als die ISO es 1990 von ANSI übernommen hat. Lassen Sie sich auch nicht von der Tatsache abbringen, dass die Dokumentennummer der australischen Standards lautet "AS 3955-1991", weil 1991 wahrscheinlich nur das Jahr ist, in dem sie es selbst von der ISO übernommen haben.

Beachten Sie die Zusammenfassung auf dieser Seite:

[Abstract]
Specifies the form and establishes the interpretation of programs written in
the C programming language. This Standard is identical with and has been
reproduced from ISO/IEC 9899:1990.

Dieses Dokument ist wirklich der ursprüngliche ANSI C89-Standard, nur in einer neu gedruckten Form. Wenn Sie 160,29 USD zur Verfügung haben, können Sie eine Kopie zum digitalen Download des PDFs oder der gedruckten Ausgabe zum gleichen Preis erhalten.

Sobald Sie den Standard haben, können Sie alle Änderungen und technischen Berichtigungen hier kostenlos finden:

http://www.open-std.org/jtc1/sc22/wg14/www/standards

Feldschützer
quelle
3
Der erste Link scheint für mich tot zu sein.
2501
4

Nur ein kleiner Hintergrund aus der Online-Dokumentation von GCC , um zu klären, was genau die Schlüsselbegriffe sind:

Die ursprüngliche ANSI C-Norm (X3.159-1989) wurde 1989 ratifiziert und 1990 veröffentlicht. Diese Norm wurde später 1990 als ISO-Norm (ISO / IEC 9899: 1990) ratifiziert. Es gab keine technischen Unterschiede zwischen diesen Veröffentlichungen. obwohl die Abschnitte des ANSI-Standards neu nummeriert wurden und zu Klauseln im ISO-Standard wurden. Dieser Standard ist in beiden Formen ab dem Datum der Ratifizierung allgemein als C89 oder gelegentlich als C90 bekannt.

Ursprünglich als Kommentar veröffentlicht, ist hier ein Link zu einem Entwurf des zuvor genannten Standards, des ANSI C-Standards. Nach meinem Verständnis können die Entwürfe kostenlos eingesehen werden, wie auch @pmg festgestellt hat.

Andrew Cheong
quelle