https://gustedt.wordpress.com/2024/10/15/the-c23-edition-of-modern-c/ Skip to content Jens Gustedt's Blog The C23 edition of Modern C The C23 edition of Modern C is now available for free download from https://hal.inria.fr/hal-02383654 This new edition has been the occasion to overhaul the presentation in many places, but its main purpose is the update to the new C standard, C23. The goal was to publish this new edition of Modern C at the same time as the new C standard goes through the procedure of ISO publication. The closest approximation of the contents of the new standard in a publically available document can be found here. New releases of major compilers already implement most of the new features that it brings. Among the most noticeable changes and additions that we handle are those for integers: there are new bit-precise types coined _BitInt (N), new C library headers (for arithmetic with overflow check) and (for bit manipulation), possibilities for 128 bit types on modern architectures, and substantial improvements for enumeration types. Other new concepts in C23 include a nullptr constant and its underlying type, syntactic annotation with attributes, more tools for type generic programming such as type inference with auto and typeof, default initialization with {}, even for variable length arrays, and constexpr for named constants of any type. Furthermore, new material has been added, discussing compound expressions and lambdas, so-called "internationalization", a comprehensive approach for program failure. Also added has been an appendix and a temporary include header for an easy transition to C23 on existing platforms, that will allow you to start off with C23 right away. Manning's early access program (MEAP) for the new edition is still open at https://www.manning.com/books/modern-c-third-edition Unfortunately they were not yet able to tell me when their version of the C23 edition will finally be published. Share this: * Share * * Email * Print * Facebook * Twitter * Related [1852c]Author Jens GustedtPosted on October 15, 2024October 15, 2024 Categories C23, integers, language, Modern C Post navigation Previous Previous post: Braiding the spaghetti: implementing defer in the preprocessor [1852c43e] Mastodon C as a language [dotd_newmeap_gustedt21-1] Copyright (c) 2010-2024 Jens Gustedt, Strasbourg, France eLlipsis a language independent preprocessor P99 macros for C99 emulation of C11 Categories * C++ (10) * C11 (45) + defects (11) + feature request (2) + library (9) * C17 (11) * C2x (24) + C23 (17) * C99 (77) + integers (13) + language (34) + P99 (17) + preprocessor (16) + syntax (17) * compiler optimization (5) * core (3) * eLlipsis (3) * fediverse (1) * lock structures (8) * macros (2) * Modern C (3) * Modular C (5) * POSIX (14) + linux (3) * rants (5) * Uncategorized (1) Recent Posts * The C23 edition of Modern C * Braiding the spaghetti: implementing defer in the preprocessor * Tail recursion for macros in C * ELlipsis: a language independent preprocessor is released * #include __FILE__ Top Posts & Pages * The C23 edition of Modern C * C23 implications for C libraries * Braiding the spaghetti: implementing defer in the preprocessor * All chapters of the C23 edition of Modern C now available in early access * The deprecated attribute in C23 does much more than marking obsolescence * Tail recursion for macros in C * #include __FILE__ * Checked integer arithmetic in the prospect of C23 * ELlipsis: a language independent preprocessor is released * Early access to the C23 edition of Modern C Search for: [ ] Search related * C99 * c threads * define * elif * endif * preprocessor * undef Follow Blog via Email Enter your email address to follow this blog and receive notifications of new posts by email. Email Address: [ ] Follow Join 208 other subscribers Meta * Register * Log in * Entries feed * Comments feed * WordPress.com Archives * October 2024 * September 2024 * July 2024 * June 2024 * May 2024 * February 2024 * January 2024 * December 2023 * October 2023 * August 2023 * June 2023 * December 2022 * January 2022 * October 2021 * January 2021 * December 2020 * November 2020 * June 2020 * May 2020 * March 2020 * September 2019 * August 2018 * June 2018 * April 2018 * August 2017 * May 2017 * March 2017 * January 2017 * November 2016 * September 2016 * August 2016 * July 2016 * July 2015 * May 2015 * April 2015 * February 2015 * October 2014 * September 2014 * April 2014 * December 2013 * October 2013 * August 2013 * July 2013 * February 2013 * December 2012 * November 2012 * October 2012 * August 2012 * July 2012 * May 2012 * April 2012 * March 2012 * February 2012 * January 2012 * December 2011 * November 2011 * October 2011 * July 2011 * June 2011 * March 2011 * February 2011 * January 2011 * December 2010 * November 2010 * October 2010 * September 2010 * August 2010 * July 2010 * June 2010 RSS RSS Feed RSS - Posts RSS Feed RSS - Comments Jens Gustedt's Blog Blog at WordPress.com. [Close and accept] Privacy & Cookies: This site uses cookies. By continuing to use this website, you agree to their use. To find out more, including how to control cookies, see here: Cookie Policy * Subscribe Subscribed + [wpcom-] Jens Gustedt's Blog Join 208 other subscribers [ ] Sign me up + Already have a WordPress.com account? Log in now. * + [wpcom-] Jens Gustedt's Blog + Customize + Subscribe Subscribed + Sign up + Log in + Copy shortlink + Report this content + View post in Reader + Manage subscriptions + Collapse this bar [b] Design a site like this with WordPress.com Get started