it-swarm-tr.com

Geçerli C veya C ++ standart belgelerini nerede bulabilirim?

Birçok soru için cevabın "standart" da olduğu görülüyor. Ancak bunu nerede bulabiliriz? Tercihen çevrimiçi.

Googling, bazen özellikle C standartları için boşuna hisseder, çünkü programlama forumları hakkında tartışmalara boğulurlar.

Bunu başlatmak için, şu anda aradığım bunlar olduğu için, çevrimiçi kaynakların iyi olduğu yerler:

  • C89
  • C99
  • C11
  • C++ 98
  • C++ 03
  • C++ 11
  • C++ 14
394
Christoffer

Standardın PDF versiyonları

1 Eylül 2014 tarihi itibariyle, PDF içerisindeki C ve C++ standartları belgeleri için fiyata göre en iyi yerler şunlardır:

Standartın yeni bir sürümünün yayınlanmasından kısa bir süre sonra, standartların (herhangi bir standardın) eski sürümlerini doğrudan standart organlarından doğrudan alamazsınız. Bu nedenle, C89, C90, C99, C++ 98, C++ 03 standartlarını standart bir kuruluştan satın almak zor olacaktır. Bir standardın eski bir revizyonuna ihtiyacınız varsa, Techstreet işaretini mümkün bir kaynak olarak kontrol edin. Örneğin, Kanada’da CAN/CSA-ISO/IEC 9899: 1990 standardını PDF’de bir ücret karşılığında sağlayabilir.

Standardın PDF olmayan elektronik versiyonları

Standardın sürümlerini yazdır

Standartların basılı kopyaları ulusal standartlar organlarından ve ISO adresinden temin edilebilir ancak çok pahalıdır.

C90 standardının basılı yayınını yukarıdakilere göre çok daha az parayla almak istiyorsanız, kullanılmış bir Herb Schildt 'nin kitabını bulabilirsiniz --- Annotated ANSI Standard at Amazon , standardın asıl metnini içerir (faydalı) ve standart ile ilgili yorum (daha az kullanışlı).

C99 ve C++ 03 standartları Wiley ve BSI'den (British Standards Institute) kitap şeklinde temin edilebilir:

Standartlar komitesi taslak versiyonları

Gelecekteki standartlar için çalışma taslağına genellikle komite web sitelerinden erişilebilir:

Bu belgelerin standartlarla aynı olmadığına dikkat edin, ancak standarda karar veren toplantılardan hemen önceki sürümler genellikle son standarttakilere çok yakındır. FCD (Final Komitesi Taslağı) versiyonları şifre korumalıdır; Onları almak için standartlar komitesinde olmanız gerekir.

Ancak, benim görüşüme göre, taslak versiyonlar standartların nihai onaylanmış versiyonlarına çok yakın olsa da, gerçekten de asıl belgelerin bir kopyasını almalısınız - özellikle de referans olarak alıntı yapmayı planlıyorsanız. Tabii ki açlıktan ölmek üzere olan öğrenciler devam etmeli ve para için sıkıştığında taslakları kullanmalıdırlar.


Bir standardın onaylanmasından birkaç ay sonra bekleyip istemediğiniz takdirde, bir standart ararken "ISO/IEC" yerine "INCITS/ISO/IEC" aramak gerekir. Bu şekilde C++ 11 standardını makul bir fiyata ve şimdi de C11 standardını bulabildim. Bu nedenle, örnek olarak webstore.ansi.org yerine "ISO/IEC 9899: 2011" yerine "INCITS/ISO/IEC 9899: 2011" kelimesini ararsınız ve makul fiyatlı _ bulursunuz PDF sürüm.


https://wg21.link/ sitesi, C++ 'ın mevcut çalışma taslak ve taslak standartlarına ve komite belgelerine kısa URL bağlantıları sağlar:


Standartın mevcut taslağı Github adresinde LaTeX kaynakları olarak korunur. Bu kaynaklar cxxdraft-htmlgen ile HTML'ye dönüştürülebilir. Aşağıdaki siteler bu şekilde oluşturulan HTML sayfalarını korur:

Tim Song ayrıca, oluşturulan TS ve Ranges TS’nin oluşturulan HTML ve PDF sürümlerini de korur.

407
Michael Burr

Standardın çevrimiçi sürümleri bulunabilir:

Çalışma Taslağı, Programlama Dili Standardı C++

Standardın tüm taslak sürümleri :
Aşağıdakilerin tümü ücretsiz olarak indirilebilir
2019-08-15: N48git
2019-06-17: N482git
2019-03-15: N481git
2019-01-21: N48git
2018-11-26: N4791git
2018-10-08: N4778git
2018-07-07: N4762git
2018-05-07: N475git
2018-04-02: N4741git
2018-02-12: N4727git
2017-11-27: N471git
2017-10-16: N47git
2017-07-30: N4687git

Bu yeni standart gibi görünüyor:
Bu sürüm Kimlik Doğrulama gerektiriyor
2017-03-21: N466 C++ 17 Taslak Standardıdır

Standardın tüm taslak sürümleri :
Aşağıdakilerin tümü ücretsiz olarak indirilebilir
2017-03-21: N4659git
2017-02-06: N464git
2016-11-28: N4618git
2016-07-12: N4606git
2016-05-30: N4594git
2016-03-19: N4582git
2015-11-09: N4567git
2015-05-22: N4527git
2015-04-10: N4431git
2014-11-19: N4296git

Bu eski C++ 14 standardı gibi görünüyor :
Bu sürüm Kimlik Doğrulama gerektiriyor
2014-10-07: N414git Temelde küçük hatalar ve düzeltilmiş yazım hataları ile C++ 14
2014-09-02: N4141git Standart C++ 14
2014-03-02: N3937
2014-03-02: N3936git

Standardın tüm taslak sürümleri :
Aşağıdakilerin tümü ücretsiz olarak indirilebilir
2013-10-13: N3797git
2013-05-16: N3691
2013-05-15: N369
2012-11-02: N3485
2012-02-28: N3376
2012-01-16: N3337git Temelde küçük hatalar ve düzeltilmiş yazım hataları ile C++ 11

Bu eski C++ 11 standardı gibi görünüyor :
Bu sürüm Doğrulama gerektiriyor
2011-04-05: N3291 C++ 11 (Veya Çok Yakın)

Standardın tüm taslak sürümleri :
Aşağıdakilerin tümü ücretsiz olarak indirilebilir
2011-02-28: N3242 (N3291'den çok küçük farklar)
2010-11-27: N3225
2010-08-21: N3126
2010-03-29: N309
2010-02-16: N3035
2009-11-09: N30
2009-09-25: N296
2009-06-22: N2914
2009-03-23: N2857
2008-10-04: N2798
2008-08-25: N272
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

Bu eski C++ 03 standardı gibi görünüyor:
Aşağıdaki sürümlerin tümü Kimlik Doğrulama gerektiriyor
2004-11-05: N17
2004-07-16: N1655 Resmi olmayan
2004-02-07: N1577 C++ 03 (Veya Çok Yakın)
2001-09-13: N1316 Taslak Teknik Düzeltme Taslağı
1997-00-00: N1117 Taslağı Teknik Düzeltme Ekibi Genişletilmiş

Standardın tüm taslak sürümleri :
Aşağıdakilerin tümü ücretsiz olarak indirilebilir
1996-00-00: N0836 Taslak Teknik Düzeltme Taslağı
1995-00-00: N0785 Bilgi Sistemleri İçin Önerilen Uluslararası Standart Taslak için Çalışma Raporu - Programlama Dili C++

Diğer İlginç Makaleler:

2019 / 2018 / 2017 / 2016 / 2015 / 2014) / 201 / 2012 / 2011

413
Martin York

C99: çevrimiçi olarak kullanılabilir . Alıntı: www.open-std.org :

Standardın halka açık olan en son sürümü, 2007-09-07 tarihli C99 + TC1 + TC2 + TC3, WG14 N1256 kombinasyonudur. Bu bir WG14 çalışma kağıdıdır, ancak verildiği tarihte konsolide standardı yansıtmaktadır.

63
Frederico

Taslak Bağlantılar:

C++ 11 (+ editoryal düzeltmeler): N3337 HTML , PDF

C++ 14 (+ editoryal düzeltmeler): N4140 HTML , PDF

C11 N157 ( metin )

C99 N1256

Taslaklar standardın tanımı, onaylama ve yayınlamadan önce yorum yapmak üzere dağıtılır.

Not Çalışan bir taslağın şu anda yürürlükte olan standart olmadığını ve tam olarak yayınlanmış standart olmadığını

24
user1055604

C++ 0x için luslararası standart taslak 'ı yararlı bulabilirsiniz.

12
James Hopkin

ISO standartları, ılımlı bir miktardan (PDF sürümü için), biraz daha fazlasına (kitap sürümü için) mal olur.

Ancak sonlandırılmamış olsalar da genellikle taslak olarak çevrimiçi olarak bulunabilirler. Son versiyonun çoğu son taslaktan önemli ölçüde farklı değildir, bu yüzden mükemmel olmasa da, tamamen uygun olur.

9
Pieter

C99 ve C++ 03 standartları Wiley'den kitap şeklinde temin edilebilir:

Ayrıca, daha önce de belirtildiği gibi, gelecekteki standartlar için çalışma taslağı genellikle komite web sitelerinde bulunabilir:

C-201x taslağı N1336 ve C++ 0x taslağı N3225 olarak kullanılabilir.

6
Anthony Williams

ISO C ve C++ standartları kanlıdır. Öte yandan, INCITS onları daha az bir süre için yeniden yayınlar. http://www.techstreet.com/ 30 $ için PDF’e sahip görünüyor (INCITS/ISO/IEC 14882: 2003'ü arayın).

Basılı versiyonlar da mevcuttur. Wiley tarafından yayınlanan İngiliz Standartları Enstitüsü versiyonlarını arayın.

3
MSalters

ANSI C standardının taslağı (aka C.89) metni çevrimiçi olarak mevcuttur. Bu, ISO C Standardı (C.90) tarafından kabul edilmeden önce ANSI komitesi tarafından standartlaştırılmıştır, bu nedenle bölümlerin numaralandırması farklıdır (ANSI bölüm 2 ila 4, kabaca ISO bölüm 5 ila 7'ye karşılık gelir), olmak) büyük ölçüde özdeş olmak.

3
jxh

Gerçek standartlar belgeleri en kullanışlı olmayabilir. Çoğu derleyici, standartları tam olarak uygulamaz ve bazen gerçekte çatışabilir. Bu yüzden zaten sahip olacağınız derleyici dokümantasyonu daha faydalı olacaktır. Ek olarak, belgeler platformlara özel açıklamalar ve uyarılar hakkında notlar içerecektir.

2
Kris Kumler

Gerçek bir standart olmamakla birlikte, C94/95 veya Normative Ek 1 olarak adlandırılan ISO C (C89/90) 'a değişiklik yapıldı. Clang gibi bazı derleyicilerin izin vermesine rağmen, C99'a entegre edildi komut satırında -std=c94 belirtin. ISO/IEC 9899: 1990/AMD 1: 1995, SAI GLOBAL (PDF veya basılı kopya).

Belgenin bir özeti bulunabilir burada .

1990'da (sonra taslak) ANSI C Standardı bir Uluslararası Standardın kabulü için düşünüldüğünde, uluslararasılaşma meselelerine değinmediği için birçok itiraz vardı. Standardın yapımında zaten birkaç yıl olduğu için, temeli sağlamak için birkaç değişiklik yapılması gerektiği (örneğin, 7.10.7 fıkrasındaki fonksiyonların eklenmiş olduğu) ve işin sağlanması için ayrı ayrı yapılması gerektiği kabul edildi. Standardın uygun uluslararasılaşması. Bu çalışma Normative Zeyilname 1 ile sonuçlandı.

Normatif Zeyilname 1, C'nin uluslararası karakter setlerinin sınırlamaları ve vaatlerine verdiği tepkiyi somutlaştırır. Digraphs ve başlık, örneğin {veya} karakterleri olmadan, ISO 646'nın ulusal varyantlarında yazılmış C programlarının görünümünü iyileştirmeyi amaçlıyordu. Spektrumun diğer ucunda, eski standardın ancak yeterli temelini, geniş karakterleri ve çok baytlı karakter dizileriyle başa çıkmak için eksiksiz ve tutarlı bir dizi yardımcı programa bağlayan ve genişleten tesisler genişletmektedir.

Bu belge Normative Zeyilname 1'i özetlemektedir. Zaten Standarda aşina olan okuyucuları hızlı bir şekilde bilgilendirmek; karmaşık konuyu NA1'in arkasına sokmaz ve getiremez ya da orijinal belgeyi referans el kitabı olarak değiştiremez. (Yine de, mümkün olduğu kadar doğru olmaya çalışır ve yazarı herhangi bir hata veya eksiklikten haberdar olmak ister.)

1
user3920237