Gdzie można znaleźć standardy C89 / C90 w formacie PDF?

90

Szukam darmowej wersji standardu C89 / C90 , ale nie mogę jej nigdzie znaleźć! Dlaczego tak trudno go znaleźć?

Standardy C99 i C11 są bardzo łatwe do uzyskania w Internecie. Nawet w pytaniach dotyczących przepełnienia stosu Gdzie znajdę aktualne dokumenty w standardzie C lub C ++? a Standard C, „Uzyskiwanie standardu” nie zawiera tego, czego szukam.

Wyszukiwania w sieci również nie pomogły, podobnie jak otwarte standardy .

Maska
źródło
5
Szkic standardu C99 można znaleźć na stronie open-std.org/JTC1/sc22/wg14/www/docs/n1256.pdf (lub szkic C11 ). Uważam, że właściwego standardu nie można uzyskać bezpłatnie.
pmg
Możesz kupić standard od ISO. Tylko wersje robocze są dostępne bezpłatnie.
Hristo Iliev
12
Powód, dla którego to pytanie zostało zamknięte, jest nieprawidłowy. Nie jest to prośba o narzędzie, bibliotekę lub „ulubione” zasoby zewnętrzne, ale o kanoniczną specyfikację danego języka.
R .. GitHub STOP HELPING ICE
1
@R ..: To prawda. Na szczęście zamknięcie pytania nie usuwa go. Liczba zamkniętych pytań, które pomogły mi bardziej niż dozwolone pytania, jest co najmniej
zastanawiająca

Odpowiedzi:

101

Możesz znaleźć ładne wersje HTML C89, C99 i C11, a także niektóre oficjalne wersje robocze plików PDF, z których są generowane, tutaj:

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

Poniżej wymieniono kilka innych przydatnych bezpośrednich linków do bezpłatnych plików PDF w standardach C89 / C90, C99 i C11:

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 PRZESTAŃ POMÓC LODOWI
źródło
9
Wszystkie dokumenty C są szkicami, a nie aktualnymi standardami. Większość lub wszystkie dokumenty C ++ to także wersje robocze; jeśli którekolwiek z nich są rzeczywistymi standardami, naruszają prawa autorskie ISO.
Keith Thompson
6
Tak, wspomniałem o tym w odpowiedzi, choć trochę niejednoznacznym językiem, ale najnowsze projekty są generalnie identyczne z opublikowanymi standardami, z wyjątkiem strony tytułowej i tym podobnych.
R .. GitHub STOP POMAGANIE LODOM
1
@Pacerier, dlaczego to nie będzie legalne? Dla mnie wygląda to na legalne = /
Ashish Ahuja
1
Dziękujemy za udostępnienie wersji roboczej standardowych linków. Podoba mi się fakt, że są to połączone pliki html :)
Bharat
9899/1990 to C90, a nie C89, które ma inną numerację. (Niezwykle pedantyczny punkt, ale właśnie miałem kogoś w innym wątku, próbując argumentować, cytując tę ​​odpowiedź jako odniesienie)
MM
6

Znam dokładnie jedno miejsce, w którym nadal można kupić oficjalną wersję NON-DRAFT oryginalnego standardu ANSI C89. To jedno miejsce to Standards Australia. Link do sklepu internetowego dla C89 jest tutaj:

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

Nie daj się zmylić faktem, że nazywa się to 9899: 1990, ponieważ jest to tylko numer ISO, który otrzymał C89, gdy ISO wchłonęło go z ANSI w 1990. Nie zniechęcaj się też faktem, że numer dokumentu Australian Standards to „AS 3955-1991”, ponieważ rok 1991 jest prawdopodobnie rokiem, w którym sami przyjęli go z ISO.

Zwróć uwagę na streszczenie podane na tej stronie:

Ten dokument jest naprawdę oryginalnym standardem ANSI C89, tylko w postaci ponownie wydrukowanej. Jeśli masz 160,29 USD na rozwidlenie, możesz otrzymać kopię do pobrania cyfrowego pliku PDF lub wersji drukowanej w tej samej cenie.

Po uzyskaniu normy wszystkie poprawki i poprawki techniczne można znaleźć tutaj bezpłatnie:

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

fieldtensor
źródło
3
Pierwszy link wydaje mi się martwy.
2501
1
@ 2501 Czy ten link jest odpowiedni dla Ciebie? https://www.techstreet.com/standards/as-3955-1991?product_id=2058662
Rob
4

Wystarczy trochę informacji z dokumentacji online GCC, aby wyjaśnić, jakie dokładnie są kluczowe terminy:

Oryginalna norma ANSI C (X3.159-1989) została ratyfikowana w 1989 r. I opublikowana w 1990 r. Norma ta została ratyfikowana jako norma ISO (ISO / IEC 9899: 1990) później w 1990 r. Nie było różnic technicznych między tymi publikacjami, chociaż sekcje normy ANSI zostały ponumerowane i stały się rozdziałami w standardzie ISO. Ten standard, w obu swoich formach, jest powszechnie znany jako C89 lub czasami jako C90 od daty ratyfikacji.

Pierwotnie opublikowany jako komentarz, tutaj jest łącze do czegoś, co wydaje się być szkicem wcześniej wspomnianego standardu, standardu ANSI C. Rozumiem, że wersje robocze można przeglądać bezpłatnie, jak zauważył również @pmg.

slackwing
źródło