Dove si possono trovare gli standard C89 / C90 in formato PDF?


90

Sto cercando una versione in copia gratuita dello standard C89 / C90 , ma non riesco a trovarla da nessuna parte! Perché è così difficile trovarlo?

Gli standard C99 e C11 sono molto facili da ottenere una copia su Internet. Anche nelle domande di Stack Overflow Dove trovo gli attuali documenti standard C o C ++? e lo standard C, ottenere lo standard non contengono ciò che cerco.

Nemmeno le ricerche sul Web hanno aiutato, né Open Standards .


5
Puoi trovare una bozza dello standard C99 su open-std.org/JTC1/sc22/wg14/www/docs/n1256.pdf (o bozza C11 ). Credo che lo Standard vero e proprio non possa essere ottenuto gratuitamente.
pmg

Puoi acquistare lo standard da ISO. Solo le versioni in bozza sono disponibili gratuitamente.
Hristo Iliev


12
Il motivo per cui questa domanda è stata chiusa non è valido. Non si tratta di chiedere uno strumento, una libreria o una risorsa off-site "preferita" ma una specifica canonica della lingua in questione.
R .. GitHub SMETTA DI AIUTARE IL GHIACCIO

1
@R ..: Quanto è vero. Fortunatamente, chiudere una domanda non la cancella. Il numero di domande chiuse che mi hanno aiutato più delle domande consentite, è a dir poco
sconcertante

Risposte:


101

Puoi trovare belle versioni HTML di C89, C99 e C11, così come alcuni dei file PDF ufficiali della bozza da cui sono stati generati, qui:

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

Di seguito sono elencati alcuni altri utili collegamenti diretti a file PDF gratuiti degli standard C89 / C90, C99 e 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


9
Tutti i documenti C sono bozze, non standard reali. Anche la maggior parte o tutti i documenti C ++ sono bozze; se qualcuno di questi è standard effettivo, viola il copyright dell'ISO.
Keith Thompson

6
Sì, l'ho detto, anche se con un linguaggio ambiguo, nella risposta, ma le ultime bozze sono generalmente identiche agli standard pubblicati tranne che per la copertina e simili.
R .. GitHub SMETTA DI AIUTARE IL GHIACCIO

1
@ Pacerier, perché non sarà legale? Mi sembra legale = /
Ashish Ahuja

1
Grazie per aver condiviso la bozza dei link standard. Mi piace il fatto che siano file HTML collegati :)
Bharat

9899/1990 è C90, non C89 che ha una numerazione diversa. (Un punto estremamente pedante ma ho appena avuto qualcuno in un altro thread che ha cercato di argomentare il punto citando questa risposta come riferimento)
MM

6

C'è esattamente un posto rimanente di cui so dove è ancora possibile acquistare una versione ufficiale NON-DRAFT dello standard ANSI C89 originale. Questo posto è Standards Australia. Il loro collegamento al web-store per C89 è qui:

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

Non lasciarti confondere dal fatto che si chiama 9899: 1990, perché questo è solo il numero ISO che C89 ha ottenuto quando l'ISO lo ha assorbito dall'ANSI nel 1990. E non lasciarti dissuadere dal fatto che il numero del documento degli standard australiani è "AS 3955-1991", perché il 1991 è probabilmente proprio l'anno in cui loro stessi l'hanno assorbito dall'ISO.

Notare l'abstract fornito in quella pagina:

Quel documento è davvero lo standard ANSI C89 originale, solo in una forma ristampata. Se hai 160,29 USD da sborsare, puoi ottenere una copia per il download digitale del PDF o dell'edizione stampata allo stesso prezzo.

Una volta ottenuto lo standard, tutte le modifiche e le correzioni tecniche possono essere trovate qui, gratuitamente:

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


3
Il primo collegamento sembra essere morto per me.
2501

1
@ 2501 Questo collegamento è corretto per te? https://www.techstreet.com/standards/as-3955-1991?product_id=2058662
Rob,

4

Solo un piccolo background dalla documentazione online di GCC per aiutare a chiarire quali sono esattamente i termini chiave:

Lo standard ANSI C originale (X3.159-1989) è stato ratificato nel 1989 e pubblicato nel 1990. Questo standard è stato ratificato come standard ISO (ISO / IEC 9899: 1990) successivamente nel 1990. Non c'erano differenze tecniche tra queste pubblicazioni, sebbene le sezioni dello standard ANSI siano state rinumerate e diventate clausole nello standard ISO. Questo standard, in entrambe le sue forme, è comunemente noto come C89, o occasionalmente come C90, dalle date di ratifica.

Originariamente pubblicato come commento, ecco un collegamento a quella che sembra essere una bozza dello standard precedentemente menzionato, lo standard ANSI C. Mi risulta che le bozze possano essere visualizzate gratuitamente, come ha notato anche @pmg.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.