Tôi đã đọc qua một số thực hành tốt nhất cho dự án GNOME, và một điều mà họ nhấn mạnh là tránh các tính năng của C99, vì sự hỗ trợ vẫn chưa phổ biến rộng rãi. Một số điều mà họ đã đề cập là các tính năng như bình luận một dòng và khai báo các biến ở giữa một khối. Nó làm cho tôi tự hỏi, là C99 hỗ trợ, ngay cả đối với các tính năng cơ bản như ý kiến //
, thực sự vẫn không phổ biến? Đã gần 15 năm kể từ khi tiêu chuẩn được thông qua, và chúng tôi thậm chí đã có một tiêu chuẩn mới được đưa ra trong thời gian đó. Đây thực sự vẫn là một vấn đề?Hỗ trợ C99 có thực sự vẫn chưa phổ biến?
5
A
Trả lời
6
http://en.wikipedia.org/wiki/C99#Implementations
Có vẻ như nó vẫn là một chút của một vấn đề, ngay cả trong GCC, mặc dù nó trông giống như một số trình biên dịch thương mại đã thực hiện toàn bộ tiêu chuẩn.
Microsoft đã nói nhiều lần không có kế hoạch triển khai chuẩn C99 tại bất kỳ thời điểm nào trong tương lai, đó là một sự xấu hổ đối với lập trình C trên Windows.
6
Chỉ "trình biên dịch C" có liên quan đến từ xa có thể được sử dụng cho ứng dụng dành cho máy tính để bàn hoặc ứng dụng di động nhưng không hỗ trợ C99 là MSVC. Nếu bạn đang viết phần mềm nhúng cho các hệ thống tối nghĩa với trình biên dịch độc quyền của riêng họ, tránh các tính năng C99 có thể có ý nghĩa, nhưng sự lựa chọn trong Gnome không có ý nghĩa gì cả.
Các vấn đề liên quan
- 1. Máy chủ web phổ biến nào có hỗ trợ cho HTML5 WebSocket?
- 2. GQL có hỗ trợ tập hợp SQL Style phổ biến không?
- 3. là google.loader.clientlocation vẫn được hỗ trợ
- 4. shlex.split vẫn không hỗ trợ unicode?
- 5. Có trình biên dịch nào hỗ trợ constexpr chưa?
- 6. Java có hỗ trợ các biến biến không?
- 7. Các biến lớp hỗ trợ Objective-C có hỗ trợ không?
- 8. G1GC vẫn chưa chính thức sản xuất chưa?
- 9. Các biến logic hỗ trợ cho .NET
- 10. Thực hiện JavaScript phổ biến Algorthms
- 11. Những trình duyệt vẫn hỗ trợ CSS biểu thức
- 12. Trạng thái của C99 hỗ trợ trong các trình biên dịch/công cụ chính là gì?
- 13. Java DMK (hay OpenDMK) vẫn được Oracle hỗ trợ?
- 14. Phương pháp phổ biến trong mô hình và trợ giúp
- 15. Có một ký tự đại diện thực sự phổ biến ở Grep không?
- 16. Opencl có hỗ trợ các biến boolean không?
- 17. AFNetworking có hỗ trợ xác thực NTLM không?
- 18. Thêm hỗ trợ iPad cho một dự án iPhone: phổ biến so với hai ứng dụng riêng biệt?
- 19. Sự kiện onbeforeunload có được hỗ trợ trên iPhone không?
- 20. Lỗi phổ biến đa luồng phổ biến bắt đầu thực hiện trên iPhone
- 21. Xcode 4.3 có hỗ trợ distcc không?
- 22. Hỗ trợ Mã VS2010 có hỗ trợ nUnit không?
- 23. Dữ liệu ember có thực sự hỗ trợ url lồng nhau không?
- 24. Ideone và Codepad có thực sự không hỗ trợ C++ 03 không?
- 25. Thuật toán phổ biến
- 26. jQuery không hỗ trợ sự kiện postmessage?
- 27. SQLDeveloper có hỗ trợ thực thi các tập lệnh không?
- 28. System.Net.Mail.SmtpClient có hỗ trợ xác thực CRAM-MD5 không?
- 29. Tại sao mô hình sự kiện jQuery không hỗ trợ sự kiện Capture và chỉ hỗ trợ sự kiện bubbling
- 30. MonoTouch và hỗ trợ biến giao diện chung
Huh. Bạn có biết tại sao MS sẽ không triển khai C99? –
http://herbsutter.com/2012/05/03/reader-qa-what-about-vc-and-c99/ Khi tôi hiểu nó, họ sẽ chỉ thực hiện các tính năng được tập hợp con của các tiêu chuẩn C++. – Nobilis
@kunkelwe: Bởi vì sự tham gia duy nhất của Microsoft trong quy trình tiêu chuẩn C là phá hoại nó. –