Jestem trochę zdezorientowana przez "C standard lib" i "C POSIX lib", ponieważ odkryłem, że wiele plików nagłówkowych zdefiniowanych w "C POSIX lib" jest również częścią "Standardowa lib".Różnica między biblioteką standardową C a biblioteką C POSIX
Zakładam więc, że "C standard lib" jest biblioteką zdefiniowaną przez organizację ANSI C, a różne wersje są różne na różnych platformach (Win32/Unix), a "C POSIX lib" to tylko implementacja dla "C standard lib" na systemach uniksopodobnych, prawda?
Ale "C POSIX lib" zawiera niektóre nagłówki niewymienione w "C standardowej lib", takie jak <sys/types.h>
, <sys/wait.h>
i <pthread.h>
.
Take <pthread.h>
jako przykład, jak sądzę jego „C średnia lib” odpowiednikiem jest <threads.h>
, następnie jeśli chcę pisać wielowątkowy program na Linux, który nagłówek pliku należy podać, <pthread.h>
lub <threads.h>
?
ANSI C jest nieaktualny od 1990 roku, kiedy C stał się międzynarodowym standardem. Odtąd C jest utrzymywane przez [grupę roboczą ISO] (http://www.open-std.org/jtc1/sc22/wg14/). – Lundin
@Lundin Całkowicie nonsens. ANSI C jest niczym innym jak przestarzałym. W rzeczywistości C11 został przyjęty przez INCITS jako standard ANSI znany jako [INCITS/ISO/IEC 9899-2012] (http://webstore.ansi.org/RecordDetail.aspx?sku=INCITS%2FISO%2FIEC+9899-2012) który jest nowym standardem ANSI C. – Wiz
@Wiz Jest to międzynarodowy standard i jest to strona międzynarodowa. Mając to na uwadze, nie ma sensu mówić o ANSI C od 1990 roku. To jest tak samo, jak gdybym zaczął odnosić się do C na tej stronie jako "SS C", ponieważ jestem ze Szwecji i szwedzkiego standardu nazywane jest SS/ISO/IEC 9899. – Lundin