- Phiên bản C23 của Modern C hiện có thể tải xuống miễn phí. Mục đích chính là cập nhật theo tiêu chuẩn C mới là C23.
- Nội dung của tiêu chuẩn mới được cung cấp ở dạng gần nhất với các tài liệu công khai. Hầu hết các tính năng mới của những trình biên dịch chính đã được triển khai.
Các thay đổi và bổ sung chính của C23
- Các thay đổi liên quan đến số nguyên: giới thiệu kiểu có độ chính xác bit mới
_BitInt(N), header thư viện C mới để kiểm tra tràn số, bổ sung header cho thao tác bit, khả năng có kiểu 128-bit trên các kiến trúc hiện đại, và cải tiến đáng kể cho kiểu enum.
- Các khái niệm mới: hằng
nullptr và kiểu cơ sở của nó, chú thích cú pháp bằng thuộc tính, nhiều công cụ hơn cho lập trình generic theo kiểu dữ liệu (ví dụ: suy luận kiểu thông qua auto và typeof), khởi tạo mặc định bằng {} (bao gồm cả mảng độ dài biến đổi), constexpr cho các hằng được đặt tên của mọi kiểu.
- Tài liệu bổ sung: thêm thảo luận về biểu thức hợp thành và lambda, cũng như cách tiếp cận toàn diện đối với lỗi chương trình được gọi là "quốc tế hóa". Cũng có thêm header include tạm thời và phụ lục để dễ dàng chuyển từ các nền tảng hiện có sang C23.
Tóm tắt của GN⁺
- Phiên bản C23 của Modern C đã được cập nhật để phản ánh tiêu chuẩn C mới, và nhiều tính năng đã được triển khai trên các trình biên dịch chính.
- C23 mang đến các cải tiến quan trọng về kiểu số nguyên, lập trình generic theo kiểu dữ liệu, khởi tạo mặc định, v.v.
- Phiên bản này hữu ích để hiểu và tận dụng tiêu chuẩn mới nhất của ngôn ngữ lập trình C, đặc biệt phù hợp với các lập trình viên muốn nhanh chóng nắm bắt những tính năng mới.
- Một ngôn ngữ khác cung cấp các tính năng tương tự C23 là các tiêu chuẩn mới nhất của C++.
1 bình luận
Ý kiến trên Hacker News
#embedkhi trình biên dịch bắt kịp. Cho đến lúc đó thì dùng Golang[[__unsequenced__]],[[maybe_unused]],[[noreturn]]được dùng quá nhiều xuyên suốt cuốn sách. Cảm thấy tác giả đã đi quá đà khi đưa các thứ chỉ dùng tùy chọn này vào mọi ví dụ mã