Tôi hơi bối rối bởi "C lib chuẩn" và "C POSIX lib", vì tôi thấy rằng, nhiều tệp tiêu đề được xác định trong "C POSIX lib" cũng là một phần của "C lib chuẩn". Vì vậy, tôi giả định rằng, "C lib tiêu chuẩn" là một lib được định nghĩa bởi tổ chức ANSI C, và có những triển khai khác nhau trên các nền tảng khác nhau (Win32/Unix), và "C POSIX lib" chỉ là một triển khai cho "C standard lib" trên các hệ điều hành giống Unix, phải không?Sự khác biệt giữa thư viện chuẩn C và thư viện C POSIX
Nhưng "C POSIX lib" chứa một số tiêu đề không được chỉ định trong "C standard lib", chẳng hạn như <sys/types.h>
, <sys/wait.h>
và <pthread.h>
.
Hãy <pthread.h>
làm ví dụ, tôi đoán nó "C chuẩn lib" đối tác là <threads.h>
, sau đó nếu tôi muốn viết một chương trình đa luồng dữ liệu trên Linux, mà tập tin tiêu đề tôi cần bao gồm, <pthread.h>
hoặc <threads.h>
?
ANSI C đã lỗi thời từ năm 1990, khi C đã trở thành một tiêu chuẩn quốc tế. Kể từ đó, C được duy trì bởi một [nhóm làm việc ISO] (http://www.open-std.org/jtc1/sc22/wg14/). – Lundin
@Lundin Hoàn toàn vô nghĩa. ANSI C không là gì ngoài lỗi thời. Trên thực tế, C11 đã được INCITS chấp nhận như một tiêu chuẩn ANSI được gọi là [INCITS/ISO/IEC 9899-2012] (http://webstore.ansi.org/RecordDetail.aspx?sku=INCITS%2FISO%2FIEC+9899-2012) đó là chuẩn ANSI C mới. – Wiz
@Wiz Đây là một tiêu chuẩn quốc tế và đây là một trang web quốc tế. Với ý nghĩ đó, nó đã không có ý nghĩa để nói về ANSI C từ năm 1990. Nó cũng giống như tôi sẽ bắt đầu đề cập đến C trên trang web này là "SS C", kể từ khi tôi đến từ Thụy Điển và tiêu chuẩn Thụy Điển được gọi là SS/ISO/IEC 9899. – Lundin