Frage

Für viele Fragen scheint die Antwort in „Standard“ gefunden werden. Aber wo finden wir das? Vorzugsweise online.

Googeln manchmal sinnlos fühlen, wieder vor allem für die C-Normen, da sie in der Flut von Diskussionen über die Programmierung Foren ertrunken sind.

Um dies zu erhalten begonnen, da diese die, die ich für den Moment bin auf der Suche, wo gibt es gute Online-Ressourcen für:

  • C89
  • C99
  • C11
  • C ++ 98
  • C ++ 03
  • C ++ 11
  • C ++ 14
War es hilfreich?

Lösung

PDF-Versionen des Standard

Ab dem 1. September 2014, die besten Standorte nach Preis für C und C ++ Standards Dokumente in PDF sind:

Sie können nicht in der Regel alte Versionen eines Standards (jede Standard) erhalten Sie direkt von den Normungsgremien kurz nach einer neuen Ausgabe der Norm freigegeben wird. So Standards für C89, C90, C99, C ++ 98, C ++ 03 werden schwer sein, um von einem Standardisierungsgremium Kauf zu finden. Wenn Sie eine alte Version eines Standard benötigen, überprüfen Techstreet als eine mögliche Quelle. Zum Beispiel kann es schaffen, noch die kanadische Version CAN / CSA-ISO / IEC 9899:. 1990 Standard in PDF, für eine Gebühr

Non-PDF elektronische Versionen des Standard

Drucke Versionen des Standard

Drucken Kopien der Normen sind verfügbar from nationalen Normungsgremien und ISO aber sehr teuer sind.

Wenn Sie für viel weniger Geld, um eine Hardcopy des C90-Standard wollen als oben, können Sie in der Lage sein, eine billige gebrauchte Kopie von Herb Schildt 's Buch Die Annotated ANSI-Norm unter Amazon , die den eigentlichen Text der Norm enthält (hilfreich ) und Kommentierung der Norm (weniger nützlich).

Die C99 und C ++ 03-Normen sind in Buchform von Wiley und das BSI (British Standards Institute):

Normenausschuss Entwürfe

Der Arbeitsentwurf für zukünftige Standards ist oft die von den Ausschuss Websites:

Beachten Sie, dass diese Dokumente nicht das gleiche wie der Standard sind, obwohl die Versionen zu den Sitzungen kurz vor, die in der Regel auf einem Standard entscheiden, sind ganz in der Nähe zu dem, was in dem endgültigen Standard ist. Die FCD (Final Committee Draft) Versionen sind durch ein Passwort geschützt; Sie müssen auf dem Normenausschuss, um sie zu erhalten.

Doch meiner Meinung nach, auch wenn die Entwürfe der endgültigen ratifizierten Versionen der Standards sehr nahe sein könnte, sollten Sie wirklich eine Kopie der eigentlichen Dokumente - vor allem, wenn Sie unter Angabe sie als Referenzen planen. Natürlich sollten hungern Studenten hergehen und die Entwürfe verwenden, wenn in Geldnot.


Es scheint, dass, wenn Sie bereit und in der Lage sind, ein paar Monate nach der Ratifizierung eines Standard warten, für „INCITS / ISO / IEC“ anstelle von „ISO / IEC“ zu suchen, wenn für ein Standard-Suche ist der Schlüssel. Auf diese Weise konnte ich den C ++ 11-Standard zu einem vernünftigen Preis und nun den C11-Standard finden. So, als Beispiel Sie suchen Sie nach "INCITS / ISO / IEC 9899: 2011" statt "ISO / IEC 9899: 2011" auf webstore.ansi.org und Sie werden die preiswerte PDF-Version finden.


Die Website https://wg21.link/ bietet Kurz URL-Links zu den C ++ aktuellen Arbeitsentwurf und Entwurf Standards und Ausschuss Papiere:


Der aktuelle Entwurf des Standards wird als LaTeX Quellen auf Github gehalten. Diese Quellen können umgewandelt werden in HTML cxxdraft-htmlgen . Auf den folgenden Seiten halten HTML-Seiten so erzeugt:

Tim Lied hält auch erzeugt HTML und PDF-Versionen des Networking TS und Bereiche TS.

Andere Tipps

Online-Versionen des Standards finden Sie hier:

Working Draft, Standard für Programmiersprache C ++

Der folgende alle Entwürfe des Standard :
Alle folgenden sind frei herunterladbare
2019.03.15: N4810 git
2019.01.21: N4800 git
2018.11.26: N4791 git
2018.10.08: N4778 git
2018.07.07: N4762 git
2018.05.07: N4750 git
2018.04.02: N4741 git
2018.02.12: N4727 git
2017.11.27: N4713 git
2017.10.16: N4700 git
2017.07.30: N4687 git

Dies scheint der neue Standard zu sein:
Diese Version erfordert Authentifizierung
2017.03.21: N4660 ist die C ++ 17 Draft Standard

Der folgende alle Entwürfe des Standard :
Alle folgenden sind frei herunterladbare
2017.03.21: N4659 git
2017.02.06: N4640 git
2016.11.28: N4618 git
2016.07.12: N4606 git
2016.05.30: N4594 git
2016.03.19: N4582 git
2015.11.09: N4567 git
2015.05.22: N4527 git
2015.04.10: N4431 git
2014.11.19: N4296 git

Dies scheint die alte C ++ 14-Standard zu sein:
Diese Version erfordert Authentifizierung
2014.10.07: N4140 < a href = "https://github.com/cplusplus/draft/blob/master/papers/n4140.pdf" rel = "nofollow noreferrer"> git Im Wesentlichen C ++ 14 mit geringfügigen Fehler und Tippfehler korrigiert < br> 2014.09.02: N4141 < a href = "https://github.com/cplusplus/draft/tree/n4141" rel = "nofollow noreferrer"> git Standard C ++ 14
2014.03.02: N3937 < br> 2014.03.02: N3936 < a href = "https://github.com/cplusplus/draft/blob/b7b8ed08ba4c111ad03e13e8524a1b746cb74ec6/papers/N3936.pdf" rel = "nofollow noreferrer"> git

Der folgende alle Entwürfe des Standard :
Alle folgenden sind frei herunterladbare
2013.10.13: N3797 git
2013.05.16: N3691
2013.05.15: N3690
2012.11.02: N3485
2012-02-28: N3376
2012-01-16: N3337 git Im Wesentlichen korrigiert C ++ 11 mit geringfügigen Fehler und Tippfehler

Diesescheint die alten C ++ 11-Standard zu sein:
Diese Version erfordert Authentifizierung
2011-04-05: N3291 C ++ 11 (oder sehr nahe)

Der folgende alle Entwürfe des Standard :
Alle folgenden sind frei herunterladbare
2011-02-28: N3242 (Unterschiede von N3291 sehr minor)
2010-11-27: N3225
2010-08-21: N3126
2010-03-29: N3090
2010-02-16: N3035
2009-11-09: N3000
2009-09-25: N2960
2009-06-22: N2914
2009-03-23: N2857
2008-10-04: N2798
2008-08-25: N2723
2008-06-27: N2691
2008-05-19: N2606
2008-03-17: N2588
2008-02-04: N2521
2007-10-22: N2461
2007-08-06: N2369
2007-06-25: N2315
2007-05-07: N2284
2006-11-03: N2134
2006-04-21: N2009
2005-10-19: N1905
2005-04-27: N1804

Dies scheint der alte C ++ 03-Standard zu sein:
Alle nachfolgenden Versionen erfordern Authentifizierung
2004-11-05: N1733 < br> 2004-07-16: N1655 Unofficial
2004.02.07: N1577 C ++ 03 (oder sehr nahe)
2001-09-13: N1316 Entwurf einer technischen Expanded Berichtigung
1997-00-00: N1117 Entwurf Expanded Technische Korrektur

Der folgende alle Entwürfe des Standard :
Alle folgenden sind frei herunterladbare
1996-00-00: N0836 Entwurf Expanded Technische Berichtigung
1995-00-00: N0785 Arbeitspapier zum Entwurf der vorgeschlagenen Internationalen Standard für Informationssysteme - Programmiersprache C ++

weitere interessante Referate:

2019 / 2018 / 2017 / 2016 / 2015 / 2014 / 2013 / 2012 / 2011

C99 ist online verfügbar . Zitat von www.open-std.org :

  

Die neueste öffentlich verfügbare Version des Standard ist die   kombinierte C99 + TC1 + TC2 + TC3, WG14 N1256 vom 2007-09-07. Das ist   ein WG14 Arbeitspapier, aber es spiegelt den konsolidierten Standard bei der   Zeitpunkt der Ausgabe.

Entwurf Links:

C ++ 11 (+ redaktionelle Korrekturen): N3337 HTML , PDF

C ++ 14 (+ redaktionelle Korrekturen): N4140 HTML , PDF

N1570 ( text )

N1256

  

Drafts des Standards sind für eine Stellungnahme vor der Ratifizierung und Veröffentlichung in Umlauf gebracht.

     

Hinweis , dass ein Arbeitsentwurf nicht der Standard ist zur Zeit in Kraft, und es ist nicht gerade der veröffentlichte Standard

Sie können die internationale Norm-Entwurf für C ++ 0x nützlich.

ISO-Standards kosten Geld, von einer moderaten Menge (für eine PDF-Version), um ein bisschen mehr (für eine Buch-Version).

Während sie jedoch noch nicht abgeschlossen sind, können sie in der Regel online eingesehen werden, wie Zugluft. Die meisten der Zeit die endgültige Fassung nicht wesentlich von dem letzten Entwurf abweichen, so zwar nicht perfekt, werden sie ganz gut passen.

Die C99 und C ++ 03-Standards in Buch erhältlich Form von Wiley:

Plus, wie bereits erwähnt, ist der Arbeitsentwurf für zukünftige Standards ist oft die von den Ausschuss Websites:

Der C-201x Entwurf ist als N1336 und der C ++ 0x Entwurf: N3225 .

Die ISO C und C ++ Standards sind blutig teuer. Auf der anderen Seite, republishes die INCITS sie für viel weniger. http://www.techstreet.com/ scheint das PDF für $ 30 zu haben, (Suche nach INCITS / ISO / IEC 14882: 2003).

Hardcopy-Versionen sind ebenfalls verfügbar. Achten Sie auf die British Standards Institute Versionen, veröffentlicht von Wiley.

Der Text eines Entwurf des ANSI-C-Standard (aka C.89) ist online verfügbar. Dies wurde durch den ANSI Ausschuß vor der Abnahme durch die ISO C Standard (C.90) standardisiert, so dass die Nummerierung der Abschnitte unterscheiden (ANSI Abschnitte 2 bis 4 entsprechen in etwa ISO Abschnitten 5 bis 7), wobei der Inhalt (vermeintliche zu sein) weitgehend identisch.

Die Dokumente aktuellen Standards möglicherweise nicht die nützlich sein. Die meisten Compiler implementieren nicht vollständig die Standards und kann manchmal tatsächlich Konflikt. So ist die Compiler-Dokumentation, die Sie bereits werden würden nützlicher sein. Darüber hinaus wird die Dokumentation plattformspezifische Bemerkungen und Hinweise auf etwaige Einschränkungen enthalten.

Auch wenn kein tatsächlicher Standard, gibt es eine Änderung der ISO C (C89 / 90) genannt C94 / 95 oder Normative Addendum 1. Es wurde in C99 integriert, obwohl einige Compiler wie Clang können Sie -std=c94 auf der Kommandozeile specifiy. ISO / IEC 9899: 1990 / Amd 1: 1995 kann von SAI GLOBAL (PDF oder Hardcopy).

Eine Zusammenfassung des Dokuments kann hier .

  

Wenn die (dann Entwurf) ANSI C Standard für erwogen wurde   Annahme einer Internationale Norm im Jahr 1990 gab es mehr   Einwände, weil es nicht Internationalisierung Probleme anzugehen hat.   Da die Norm war bereits mehrere Jahre in der Herstellung gewesen, es   wurde vereinbart, dass einige Änderungen die Grundlage zu schaffen gemacht würden (für   Beispielsweise können die Funktionen in Subklausel 7.10.7 wurden hinzugefügt), und die Arbeit würde   werden separat durchgeführt ordnungsgemäße Internationalisierung bereitzustellen   Der Standard. Diese Arbeit hat in Normative Addendum gipfelte 1.

     

Normative Addendum 1 verkörpert C Reaktion auf sowohl die Beschränkungen und   Versprechungen der internationalen Zeichensätzen. Digraphe und die   Header wurden bedeutet das Auftreten von C-Programmen zu verbessern, geschrieben in   nationalen Varianten von ISO 646 ohne, zum Beispiel {oder} Zeichen. Auf der   andere Ende des Spektrums, die Einrichtungen verbunden sind und    sich von den alten Standard ist kaum ausreichend Grundlage in ein   vollständige und konsistente Reihe von Werkzeugen für die breite Zeichen Handhabung   und Multibyte-Strings.

     

Dieses Dokument fasst Normative Addendum 1. Es ist beabsichtigt,   schnell informieren Leser, die bereits mit dem Standard-sind; es   nicht der Fall, und nicht, die komplexe Materie hinter NA1 einführen,   noch kann er das Originaldokument als Referenzhandbuch ersetzen.   (Trotzdem versucht sie so genau wie möglich zu sein, und sein Autor   möchte über Fehler oder Auslassungen hören.)

http://c0x.coding-guidelines.com/ enthält eine durchsuchbare, HTML-basierten Version des C-Standard. Eigentlich eine leicht modifizierte Version:

  

Diese Website enthält eine modifizierte Version des N1256. Es enthält   Formulierung, die aus C99 (das heißt, in Form durchgestrichen) gelöscht wurde   und Formulierung, die verwendet wird in C99 erscheinen (das heißt, in unterstrichen   Form).

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top