CINXE.COM

C23 (C standard revision) - Wikipedia

<!DOCTYPE html> <html class="client-nojs vector-feature-language-in-header-enabled vector-feature-language-in-main-page-header-disabled vector-feature-sticky-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-1 vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-custom-font-size-clientpref-1 vector-feature-appearance-pinned-clientpref-1 vector-feature-night-mode-enabled skin-theme-clientpref-day vector-toc-available" lang="en" dir="ltr"> <head> <meta charset="UTF-8"> <title>C23 (C standard revision) - Wikipedia</title> <script>(function(){var className="client-js vector-feature-language-in-header-enabled vector-feature-language-in-main-page-header-disabled vector-feature-sticky-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-1 vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-custom-font-size-clientpref-1 vector-feature-appearance-pinned-clientpref-1 vector-feature-night-mode-enabled skin-theme-clientpref-day vector-toc-available";var cookie=document.cookie.match(/(?:^|; )enwikimwclientpreferences=([^;]+)/);if(cookie){cookie[1].split('%2C').forEach(function(pref){className=className.replace(new RegExp('(^| )'+pref.replace(/-clientpref-\w+$|[^\w-]+/g,'')+'-clientpref-\\w+( |$)'),'$1'+pref+'$2');});}document.documentElement.className=className;}());RLCONF={"wgBreakFrames":false,"wgSeparatorTransformTable":["",""],"wgDigitTransformTable":["",""],"wgDefaultDateFormat":"dmy", "wgMonthNames":["","January","February","March","April","May","June","July","August","September","October","November","December"],"wgRequestId":"bcbfdf1c-35d1-403c-a0e2-1d9bf18855b4","wgCanonicalNamespace":"","wgCanonicalSpecialPageName":false,"wgNamespaceNumber":0,"wgPageName":"C23_(C_standard_revision)","wgTitle":"C23 (C standard revision)","wgCurRevisionId":1254909966,"wgRevisionId":1254909966,"wgArticleId":61252437,"wgIsArticle":true,"wgIsRedirect":false,"wgAction":"view","wgUserName":null,"wgUserGroups":["*"],"wgCategories":["Articles with short description","Short description is different from Wikidata","Articles with example C code","C (programming language)","Programming language standards"],"wgPageViewLanguage":"en","wgPageContentLanguage":"en","wgPageContentModel":"wikitext","wgRelevantPageName":"C23_(C_standard_revision)","wgRelevantArticleId":61252437,"wgIsProbablyEditable":true,"wgRelevantPageIsProbablyEditable":true,"wgRestrictionEdit":[],"wgRestrictionMove":[], "wgNoticeProject":"wikipedia","wgCiteReferencePreviewsActive":false,"wgFlaggedRevsParams":{"tags":{"status":{"levels":1}}},"wgMediaViewerOnClick":true,"wgMediaViewerEnabledByDefault":true,"wgPopupsFlags":0,"wgVisualEditor":{"pageLanguageCode":"en","pageLanguageDir":"ltr","pageVariantFallbacks":"en"},"wgMFDisplayWikibaseDescriptions":{"search":true,"watchlist":true,"tagline":false,"nearby":true},"wgWMESchemaEditAttemptStepOversample":false,"wgWMEPageLength":40000,"wgRelatedArticlesCompat":[],"wgCentralAuthMobileDomain":false,"wgEditSubmitButtonLabelPublish":true,"wgULSPosition":"interlanguage","wgULSisCompactLinksEnabled":false,"wgVector2022LanguageInHeader":true,"wgULSisLanguageSelectorEmpty":false,"wgWikibaseItemId":"Q67693987","wgCheckUserClientHintsHeadersJsApi":["brands","architecture","bitness","fullVersionList","mobile","model","platform","platformVersion"],"GEHomepageSuggestedEditsEnableTopics":true,"wgGETopicsMatchModeEnabled":false, "wgGEStructuredTaskRejectionReasonTextInputEnabled":false,"wgGELevelingUpEnabledForUser":false};RLSTATE={"ext.globalCssJs.user.styles":"ready","site.styles":"ready","user.styles":"ready","ext.globalCssJs.user":"ready","user":"ready","user.options":"loading","ext.cite.styles":"ready","ext.math.styles":"ready","ext.pygments":"ready","skins.vector.search.codex.styles":"ready","skins.vector.styles":"ready","skins.vector.icons":"ready","jquery.makeCollapsible.styles":"ready","ext.wikimediamessages.styles":"ready","ext.visualEditor.desktopArticleTarget.noscript":"ready","ext.uls.interlanguage":"ready","wikibase.client.init":"ready","ext.wikimediaBadges":"ready"};RLPAGEMODULES=["ext.cite.ux-enhancements","ext.pygments.view","site","mediawiki.page.ready","jquery.makeCollapsible","mediawiki.toc","skins.vector.js","ext.centralNotice.geoIP","ext.centralNotice.startUp","ext.gadget.ReferenceTooltips","ext.gadget.switcher","ext.urlShortener.toolbar","ext.centralauth.centralautologin","mmv.bootstrap" ,"ext.popups","ext.visualEditor.desktopArticleTarget.init","ext.visualEditor.targetLoader","ext.echo.centralauth","ext.eventLogging","ext.wikimediaEvents","ext.navigationTiming","ext.uls.interface","ext.cx.eventlogging.campaigns","ext.cx.uls.quick.actions","wikibase.client.vector-2022","ext.checkUser.clientHints","ext.growthExperiments.SuggestedEditSession","wikibase.sidebar.tracking"];</script> <script>(RLQ=window.RLQ||[]).push(function(){mw.loader.impl(function(){return["user.options@12s5i",function($,jQuery,require,module){mw.user.tokens.set({"patrolToken":"+\\","watchToken":"+\\","csrfToken":"+\\"}); }];});});</script> <link rel="stylesheet" href="/w/load.php?lang=en&amp;modules=ext.cite.styles%7Cext.math.styles%7Cext.pygments%2CwikimediaBadges%7Cext.uls.interlanguage%7Cext.visualEditor.desktopArticleTarget.noscript%7Cext.wikimediamessages.styles%7Cjquery.makeCollapsible.styles%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles%7Cwikibase.client.init&amp;only=styles&amp;skin=vector-2022"> <script async="" src="/w/load.php?lang=en&amp;modules=startup&amp;only=scripts&amp;raw=1&amp;skin=vector-2022"></script> <meta name="ResourceLoaderDynamicStyles" content=""> <link rel="stylesheet" href="/w/load.php?lang=en&amp;modules=site.styles&amp;only=styles&amp;skin=vector-2022"> <meta name="generator" content="MediaWiki 1.44.0-wmf.4"> <meta name="referrer" content="origin"> <meta name="referrer" content="origin-when-cross-origin"> <meta name="robots" content="max-image-preview:standard"> <meta name="format-detection" content="telephone=no"> <meta name="viewport" content="width=1120"> <meta property="og:title" content="C23 (C standard revision) - Wikipedia"> <meta property="og:type" content="website"> <link rel="preconnect" href="//upload.wikimedia.org"> <link rel="alternate" media="only screen and (max-width: 640px)" href="//en.m.wikipedia.org/wiki/C23_(C_standard_revision)"> <link rel="alternate" type="application/x-wiki" title="Edit this page" href="/w/index.php?title=C23_(C_standard_revision)&amp;action=edit"> <link rel="apple-touch-icon" href="/static/apple-touch/wikipedia.png"> <link rel="icon" href="/static/favicon/wikipedia.ico"> <link rel="search" type="application/opensearchdescription+xml" href="/w/rest.php/v1/search" title="Wikipedia (en)"> <link rel="EditURI" type="application/rsd+xml" href="//en.wikipedia.org/w/api.php?action=rsd"> <link rel="canonical" href="https://en.wikipedia.org/wiki/C23_(C_standard_revision)"> <link rel="license" href="https://creativecommons.org/licenses/by-sa/4.0/deed.en"> <link rel="alternate" type="application/atom+xml" title="Wikipedia Atom feed" href="/w/index.php?title=Special:RecentChanges&amp;feed=atom"> <link rel="dns-prefetch" href="//meta.wikimedia.org" /> <link rel="dns-prefetch" href="//login.wikimedia.org"> </head> <body class="skin--responsive skin-vector skin-vector-search-vue mediawiki ltr sitedir-ltr mw-hide-empty-elt ns-0 ns-subject mw-editable page-C23_C_standard_revision rootpage-C23_C_standard_revision skin-vector-2022 action-view"><a class="mw-jump-link" href="#bodyContent">Jump to content</a> <div class="vector-header-container"> <header class="vector-header mw-header"> <div class="vector-header-start"> <nav class="vector-main-menu-landmark" aria-label="Site"> <div id="vector-main-menu-dropdown" class="vector-dropdown vector-main-menu-dropdown vector-button-flush-left vector-button-flush-right" > <input type="checkbox" id="vector-main-menu-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-main-menu-dropdown" class="vector-dropdown-checkbox " aria-label="Main menu" > <label id="vector-main-menu-dropdown-label" for="vector-main-menu-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only " aria-hidden="true" ><span class="vector-icon mw-ui-icon-menu mw-ui-icon-wikimedia-menu"></span> <span class="vector-dropdown-label-text">Main menu</span> </label> <div class="vector-dropdown-content"> <div id="vector-main-menu-unpinned-container" class="vector-unpinned-container"> <div id="vector-main-menu" class="vector-main-menu vector-pinnable-element"> <div class="vector-pinnable-header vector-main-menu-pinnable-header vector-pinnable-header-unpinned" data-feature-name="main-menu-pinned" data-pinnable-element-id="vector-main-menu" data-pinned-container-id="vector-main-menu-pinned-container" data-unpinned-container-id="vector-main-menu-unpinned-container" > <div class="vector-pinnable-header-label">Main menu</div> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-pin-button" data-event-name="pinnable-header.vector-main-menu.pin">move to sidebar</button> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-unpin-button" data-event-name="pinnable-header.vector-main-menu.unpin">hide</button> </div> <div id="p-navigation" class="vector-menu mw-portlet mw-portlet-navigation" > <div class="vector-menu-heading"> Navigation </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="n-mainpage-description" class="mw-list-item"><a href="/wiki/Main_Page" title="Visit the main page [z]" accesskey="z"><span>Main page</span></a></li><li id="n-contents" class="mw-list-item"><a href="/wiki/Wikipedia:Contents" title="Guides to browsing Wikipedia"><span>Contents</span></a></li><li id="n-currentevents" class="mw-list-item"><a href="/wiki/Portal:Current_events" title="Articles related to current events"><span>Current events</span></a></li><li id="n-randompage" class="mw-list-item"><a href="/wiki/Special:Random" title="Visit a randomly selected article [x]" accesskey="x"><span>Random article</span></a></li><li id="n-aboutsite" class="mw-list-item"><a href="/wiki/Wikipedia:About" title="Learn about Wikipedia and how it works"><span>About Wikipedia</span></a></li><li id="n-contactpage" class="mw-list-item"><a href="//en.wikipedia.org/wiki/Wikipedia:Contact_us" title="How to contact Wikipedia"><span>Contact us</span></a></li> </ul> </div> </div> <div id="p-interaction" class="vector-menu mw-portlet mw-portlet-interaction" > <div class="vector-menu-heading"> Contribute </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="n-help" class="mw-list-item"><a href="/wiki/Help:Contents" title="Guidance on how to use and edit Wikipedia"><span>Help</span></a></li><li id="n-introduction" class="mw-list-item"><a href="/wiki/Help:Introduction" title="Learn how to edit Wikipedia"><span>Learn to edit</span></a></li><li id="n-portal" class="mw-list-item"><a href="/wiki/Wikipedia:Community_portal" title="The hub for editors"><span>Community portal</span></a></li><li id="n-recentchanges" class="mw-list-item"><a href="/wiki/Special:RecentChanges" title="A list of recent changes to Wikipedia [r]" accesskey="r"><span>Recent changes</span></a></li><li id="n-upload" class="mw-list-item"><a href="/wiki/Wikipedia:File_upload_wizard" title="Add images or other media for use on Wikipedia"><span>Upload file</span></a></li> </ul> </div> </div> </div> </div> </div> </div> </nav> <a href="/wiki/Main_Page" class="mw-logo"> <img class="mw-logo-icon" src="/static/images/icons/wikipedia.png" alt="" aria-hidden="true" height="50" width="50"> <span class="mw-logo-container skin-invert"> <img class="mw-logo-wordmark" alt="Wikipedia" src="/static/images/mobile/copyright/wikipedia-wordmark-en.svg" style="width: 7.5em; height: 1.125em;"> <img class="mw-logo-tagline" alt="The Free Encyclopedia" src="/static/images/mobile/copyright/wikipedia-tagline-en.svg" width="117" height="13" style="width: 7.3125em; height: 0.8125em;"> </span> </a> </div> <div class="vector-header-end"> <div id="p-search" role="search" class="vector-search-box-vue vector-search-box-collapses vector-search-box-show-thumbnail vector-search-box-auto-expand-width vector-search-box"> <a href="/wiki/Special:Search" class="cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only search-toggle" title="Search Wikipedia [f]" accesskey="f"><span class="vector-icon mw-ui-icon-search mw-ui-icon-wikimedia-search"></span> <span>Search</span> </a> <div class="vector-typeahead-search-container"> <div class="cdx-typeahead-search cdx-typeahead-search--show-thumbnail cdx-typeahead-search--auto-expand-width"> <form action="/w/index.php" id="searchform" class="cdx-search-input cdx-search-input--has-end-button"> <div id="simpleSearch" class="cdx-search-input__input-wrapper" data-search-loc="header-moved"> <div class="cdx-text-input cdx-text-input--has-start-icon"> <input class="cdx-text-input__input" type="search" name="search" placeholder="Search Wikipedia" aria-label="Search Wikipedia" autocapitalize="sentences" title="Search Wikipedia [f]" accesskey="f" id="searchInput" > <span class="cdx-text-input__icon cdx-text-input__start-icon"></span> </div> <input type="hidden" name="title" value="Special:Search"> </div> <button class="cdx-button cdx-search-input__end-button">Search</button> </form> </div> </div> </div> <nav class="vector-user-links vector-user-links-wide" aria-label="Personal tools"> <div class="vector-user-links-main"> <div id="p-vector-user-menu-preferences" class="vector-menu mw-portlet emptyPortlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> </ul> </div> </div> <div id="p-vector-user-menu-userpage" class="vector-menu mw-portlet emptyPortlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> </ul> </div> </div> <nav class="vector-appearance-landmark" aria-label="Appearance"> <div id="vector-appearance-dropdown" class="vector-dropdown " title="Change the appearance of the page&#039;s font size, width, and color" > <input type="checkbox" id="vector-appearance-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-appearance-dropdown" class="vector-dropdown-checkbox " aria-label="Appearance" > <label id="vector-appearance-dropdown-label" for="vector-appearance-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only " aria-hidden="true" ><span class="vector-icon mw-ui-icon-appearance mw-ui-icon-wikimedia-appearance"></span> <span class="vector-dropdown-label-text">Appearance</span> </label> <div class="vector-dropdown-content"> <div id="vector-appearance-unpinned-container" class="vector-unpinned-container"> </div> </div> </div> </nav> <div id="p-vector-user-menu-notifications" class="vector-menu mw-portlet emptyPortlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> </ul> </div> </div> <div id="p-vector-user-menu-overflow" class="vector-menu mw-portlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="pt-sitesupport-2" class="user-links-collapsible-item mw-list-item user-links-collapsible-item"><a data-mw="interface" href="https://donate.wikimedia.org/wiki/Special:FundraiserRedirector?utm_source=donate&amp;utm_medium=sidebar&amp;utm_campaign=C13_en.wikipedia.org&amp;uselang=en" class=""><span>Donate</span></a> </li> <li id="pt-createaccount-2" class="user-links-collapsible-item mw-list-item user-links-collapsible-item"><a data-mw="interface" href="/w/index.php?title=Special:CreateAccount&amp;returnto=C23+%28C+standard+revision%29" title="You are encouraged to create an account and log in; however, it is not mandatory" class=""><span>Create account</span></a> </li> <li id="pt-login-2" class="user-links-collapsible-item mw-list-item user-links-collapsible-item"><a data-mw="interface" href="/w/index.php?title=Special:UserLogin&amp;returnto=C23+%28C+standard+revision%29" title="You&#039;re encouraged to log in; however, it&#039;s not mandatory. [o]" accesskey="o" class=""><span>Log in</span></a> </li> </ul> </div> </div> </div> <div id="vector-user-links-dropdown" class="vector-dropdown vector-user-menu vector-button-flush-right vector-user-menu-logged-out" title="Log in and more options" > <input type="checkbox" id="vector-user-links-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-user-links-dropdown" class="vector-dropdown-checkbox " aria-label="Personal tools" > <label id="vector-user-links-dropdown-label" for="vector-user-links-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only " aria-hidden="true" ><span class="vector-icon mw-ui-icon-ellipsis mw-ui-icon-wikimedia-ellipsis"></span> <span class="vector-dropdown-label-text">Personal tools</span> </label> <div class="vector-dropdown-content"> <div id="p-personal" class="vector-menu mw-portlet mw-portlet-personal user-links-collapsible-item" title="User menu" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="pt-sitesupport" class="user-links-collapsible-item mw-list-item"><a href="https://donate.wikimedia.org/wiki/Special:FundraiserRedirector?utm_source=donate&amp;utm_medium=sidebar&amp;utm_campaign=C13_en.wikipedia.org&amp;uselang=en"><span>Donate</span></a></li><li id="pt-createaccount" class="user-links-collapsible-item mw-list-item"><a href="/w/index.php?title=Special:CreateAccount&amp;returnto=C23+%28C+standard+revision%29" title="You are encouraged to create an account and log in; however, it is not mandatory"><span class="vector-icon mw-ui-icon-userAdd mw-ui-icon-wikimedia-userAdd"></span> <span>Create account</span></a></li><li id="pt-login" class="user-links-collapsible-item mw-list-item"><a href="/w/index.php?title=Special:UserLogin&amp;returnto=C23+%28C+standard+revision%29" title="You&#039;re encouraged to log in; however, it&#039;s not mandatory. [o]" accesskey="o"><span class="vector-icon mw-ui-icon-logIn mw-ui-icon-wikimedia-logIn"></span> <span>Log in</span></a></li> </ul> </div> </div> <div id="p-user-menu-anon-editor" class="vector-menu mw-portlet mw-portlet-user-menu-anon-editor" > <div class="vector-menu-heading"> Pages for logged out editors <a href="/wiki/Help:Introduction" aria-label="Learn more about editing"><span>learn more</span></a> </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="pt-anoncontribs" class="mw-list-item"><a href="/wiki/Special:MyContributions" title="A list of edits made from this IP address [y]" accesskey="y"><span>Contributions</span></a></li><li id="pt-anontalk" class="mw-list-item"><a href="/wiki/Special:MyTalk" title="Discussion about edits from this IP address [n]" accesskey="n"><span>Talk</span></a></li> </ul> </div> </div> </div> </div> </nav> </div> </header> </div> <div class="mw-page-container"> <div class="mw-page-container-inner"> <div class="vector-sitenotice-container"> <div id="siteNotice"><!-- CentralNotice --></div> </div> <div class="vector-column-start"> <div class="vector-main-menu-container"> <div id="mw-navigation"> <nav id="mw-panel" class="vector-main-menu-landmark" aria-label="Site"> <div id="vector-main-menu-pinned-container" class="vector-pinned-container"> </div> </nav> </div> </div> <div class="vector-sticky-pinned-container"> <nav id="mw-panel-toc" aria-label="Contents" data-event-name="ui.sidebar-toc" class="mw-table-of-contents-container vector-toc-landmark"> <div id="vector-toc-pinned-container" class="vector-pinned-container"> <div id="vector-toc" class="vector-toc vector-pinnable-element"> <div class="vector-pinnable-header vector-toc-pinnable-header vector-pinnable-header-pinned" data-feature-name="toc-pinned" data-pinnable-element-id="vector-toc" > <h2 class="vector-pinnable-header-label">Contents</h2> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-pin-button" data-event-name="pinnable-header.vector-toc.pin">move to sidebar</button> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-unpin-button" data-event-name="pinnable-header.vector-toc.unpin">hide</button> </div> <ul class="vector-toc-contents" id="mw-panel-toc-list"> <li id="toc-mw-content-text" class="vector-toc-list-item vector-toc-level-1"> <a href="#" class="vector-toc-link"> <div class="vector-toc-text">(Top)</div> </a> </li> <li id="toc-Features" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#Features"> <div class="vector-toc-text"> <span class="vector-toc-numb">1</span> <span>Features</span> </div> </a> <button aria-controls="toc-Features-sublist" class="cdx-button cdx-button--weight-quiet cdx-button--icon-only vector-toc-toggle"> <span class="vector-icon mw-ui-icon-wikimedia-expand"></span> <span>Toggle Features subsection</span> </button> <ul id="toc-Features-sublist" class="vector-toc-list"> <li id="toc-Standard_Library" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Standard_Library"> <div class="vector-toc-text"> <span class="vector-toc-numb">1.1</span> <span>Standard Library</span> </div> </a> <ul id="toc-Standard_Library-sublist" class="vector-toc-list"> <li id="toc-New_functions" class="vector-toc-list-item vector-toc-level-3"> <a class="vector-toc-link" href="#New_functions"> <div class="vector-toc-text"> <span class="vector-toc-numb">1.1.1</span> <span>New functions</span> </div> </a> <ul id="toc-New_functions-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Existing_functions" class="vector-toc-list-item vector-toc-level-3"> <a class="vector-toc-link" href="#Existing_functions"> <div class="vector-toc-text"> <span class="vector-toc-numb">1.1.2</span> <span>Existing functions</span> </div> </a> <ul id="toc-Existing_functions-sublist" class="vector-toc-list"> </ul> </li> </ul> </li> <li id="toc-Preprocessor" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Preprocessor"> <div class="vector-toc-text"> <span class="vector-toc-numb">1.2</span> <span>Preprocessor</span> </div> </a> <ul id="toc-Preprocessor-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Types" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Types"> <div class="vector-toc-text"> <span class="vector-toc-numb">1.3</span> <span>Types</span> </div> </a> <ul id="toc-Types-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Constants" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Constants"> <div class="vector-toc-text"> <span class="vector-toc-numb">1.4</span> <span>Constants</span> </div> </a> <ul id="toc-Constants-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Keywords" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Keywords"> <div class="vector-toc-text"> <span class="vector-toc-numb">1.5</span> <span>Keywords</span> </div> </a> <ul id="toc-Keywords-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Syntax" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Syntax"> <div class="vector-toc-text"> <span class="vector-toc-numb">1.6</span> <span>Syntax</span> </div> </a> <ul id="toc-Syntax-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-C++_compatibility" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#C++_compatibility"> <div class="vector-toc-text"> <span class="vector-toc-numb">1.7</span> <span>C++ compatibility</span> </div> </a> <ul id="toc-C++_compatibility-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Other_features" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Other_features"> <div class="vector-toc-text"> <span class="vector-toc-numb">1.8</span> <span>Other features</span> </div> </a> <ul id="toc-Other_features-sublist" class="vector-toc-list"> </ul> </li> </ul> </li> <li id="toc-Obsolete_features" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#Obsolete_features"> <div class="vector-toc-text"> <span class="vector-toc-numb">2</span> <span>Obsolete features</span> </div> </a> <ul id="toc-Obsolete_features-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Compiler_support" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#Compiler_support"> <div class="vector-toc-text"> <span class="vector-toc-numb">3</span> <span>Compiler support</span> </div> </a> <ul id="toc-Compiler_support-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Available_texts" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#Available_texts"> <div class="vector-toc-text"> <span class="vector-toc-numb">4</span> <span>Available texts</span> </div> </a> <ul id="toc-Available_texts-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-See_also" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#See_also"> <div class="vector-toc-text"> <span class="vector-toc-numb">5</span> <span>See also</span> </div> </a> <ul id="toc-See_also-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-References" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#References"> <div class="vector-toc-text"> <span class="vector-toc-numb">6</span> <span>References</span> </div> </a> <ul id="toc-References-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Further_reading" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#Further_reading"> <div class="vector-toc-text"> <span class="vector-toc-numb">7</span> <span>Further reading</span> </div> </a> <ul id="toc-Further_reading-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-External_links" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#External_links"> <div class="vector-toc-text"> <span class="vector-toc-numb">8</span> <span>External links</span> </div> </a> <ul id="toc-External_links-sublist" class="vector-toc-list"> </ul> </li> </ul> </div> </div> </nav> </div> </div> <div class="mw-content-container"> <main id="content" class="mw-body"> <header class="mw-body-header vector-page-titlebar"> <nav aria-label="Contents" class="vector-toc-landmark"> <div id="vector-page-titlebar-toc" class="vector-dropdown vector-page-titlebar-toc vector-button-flush-left" > <input type="checkbox" id="vector-page-titlebar-toc-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-page-titlebar-toc" class="vector-dropdown-checkbox " aria-label="Toggle the table of contents" > <label id="vector-page-titlebar-toc-label" for="vector-page-titlebar-toc-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only " aria-hidden="true" ><span class="vector-icon mw-ui-icon-listBullet mw-ui-icon-wikimedia-listBullet"></span> <span class="vector-dropdown-label-text">Toggle the table of contents</span> </label> <div class="vector-dropdown-content"> <div id="vector-page-titlebar-toc-unpinned-container" class="vector-unpinned-container"> </div> </div> </div> </nav> <h1 id="firstHeading" class="firstHeading mw-first-heading"><span class="mw-page-title-main">C23 (C standard revision)</span></h1> <div id="p-lang-btn" class="vector-dropdown mw-portlet mw-portlet-lang" > <input type="checkbox" id="p-lang-btn-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-p-lang-btn" class="vector-dropdown-checkbox mw-interlanguage-selector" aria-label="Go to an article in another language. Available in 9 languages" > <label id="p-lang-btn-label" for="p-lang-btn-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--action-progressive mw-portlet-lang-heading-9" aria-hidden="true" ><span class="vector-icon mw-ui-icon-language-progressive mw-ui-icon-wikimedia-language-progressive"></span> <span class="vector-dropdown-label-text">9 languages</span> </label> <div class="vector-dropdown-content"> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li class="interlanguage-link interwiki-ca mw-list-item"><a href="https://ca.wikipedia.org/wiki/C23_(revisi%C3%B3_est%C3%A0ndard_C)" title="C23 (revisió estàndard C) – Catalan" lang="ca" hreflang="ca" data-title="C23 (revisió estàndard C)" data-language-autonym="Català" data-language-local-name="Catalan" class="interlanguage-link-target"><span>Català</span></a></li><li class="interlanguage-link interwiki-fa mw-list-item"><a href="https://fa.wikipedia.org/wiki/%D8%B3%DB%8C2x" title="سی2x – Persian" lang="fa" hreflang="fa" data-title="سی2x" data-language-autonym="فارسی" data-language-local-name="Persian" class="interlanguage-link-target"><span>فارسی</span></a></li><li class="interlanguage-link interwiki-ja mw-list-item"><a href="https://ja.wikipedia.org/wiki/C23_(C%E8%A8%80%E8%AA%9E)" title="C23 (C言語) – Japanese" lang="ja" hreflang="ja" data-title="C23 (C言語)" data-language-autonym="日本語" data-language-local-name="Japanese" class="interlanguage-link-target"><span>日本語</span></a></li><li class="interlanguage-link interwiki-no mw-list-item"><a href="https://no.wikipedia.org/wiki/C23" title="C23 – Norwegian Bokmål" lang="nb" hreflang="nb" data-title="C23" data-language-autonym="Norsk bokmål" data-language-local-name="Norwegian Bokmål" class="interlanguage-link-target"><span>Norsk bokmål</span></a></li><li class="interlanguage-link interwiki-ru mw-list-item"><a href="https://ru.wikipedia.org/wiki/C23" title="C23 – Russian" lang="ru" hreflang="ru" data-title="C23" data-language-autonym="Русский" data-language-local-name="Russian" class="interlanguage-link-target"><span>Русский</span></a></li><li class="interlanguage-link interwiki-fi mw-list-item"><a href="https://fi.wikipedia.org/wiki/C23" title="C23 – Finnish" lang="fi" hreflang="fi" data-title="C23" data-language-autonym="Suomi" data-language-local-name="Finnish" class="interlanguage-link-target"><span>Suomi</span></a></li><li class="interlanguage-link interwiki-tr mw-list-item"><a href="https://tr.wikipedia.org/wiki/C23_(C_standart_revizyonu)" title="C23 (C standart revizyonu) – Turkish" lang="tr" hreflang="tr" data-title="C23 (C standart revizyonu)" data-language-autonym="Türkçe" data-language-local-name="Turkish" class="interlanguage-link-target"><span>Türkçe</span></a></li><li class="interlanguage-link interwiki-uk mw-list-item"><a href="https://uk.wikipedia.org/wiki/C23" title="C23 – Ukrainian" lang="uk" hreflang="uk" data-title="C23" data-language-autonym="Українська" data-language-local-name="Ukrainian" class="interlanguage-link-target"><span>Українська</span></a></li><li class="interlanguage-link interwiki-zh mw-list-item"><a href="https://zh.wikipedia.org/wiki/C23_(C%E8%AA%9E%E8%A8%80%E6%A8%99%E6%BA%96)" title="C23 (C語言標準) – Chinese" lang="zh" hreflang="zh" data-title="C23 (C語言標準)" data-language-autonym="中文" data-language-local-name="Chinese" class="interlanguage-link-target"><span>中文</span></a></li> </ul> <div class="after-portlet after-portlet-lang"><span class="wb-langlinks-edit wb-langlinks-link"><a href="https://www.wikidata.org/wiki/Special:EntityPage/Q67693987#sitelinks-wikipedia" title="Edit interlanguage links" class="wbc-editpage">Edit links</a></span></div> </div> </div> </div> </header> <div class="vector-page-toolbar"> <div class="vector-page-toolbar-container"> <div id="left-navigation"> <nav aria-label="Namespaces"> <div id="p-associated-pages" class="vector-menu vector-menu-tabs mw-portlet mw-portlet-associated-pages" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="ca-nstab-main" class="selected vector-tab-noicon mw-list-item"><a href="/wiki/C23_(C_standard_revision)" title="View the content page [c]" accesskey="c"><span>Article</span></a></li><li id="ca-talk" class="vector-tab-noicon mw-list-item"><a href="/wiki/Talk:C23_(C_standard_revision)" rel="discussion" title="Discuss improvements to the content page [t]" accesskey="t"><span>Talk</span></a></li> </ul> </div> </div> <div id="vector-variants-dropdown" class="vector-dropdown emptyPortlet" > <input type="checkbox" id="vector-variants-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-variants-dropdown" class="vector-dropdown-checkbox " aria-label="Change language variant" > <label id="vector-variants-dropdown-label" for="vector-variants-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet" aria-hidden="true" ><span class="vector-dropdown-label-text">English</span> </label> <div class="vector-dropdown-content"> <div id="p-variants" class="vector-menu mw-portlet mw-portlet-variants emptyPortlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> </ul> </div> </div> </div> </div> </nav> </div> <div id="right-navigation" class="vector-collapsible"> <nav aria-label="Views"> <div id="p-views" class="vector-menu vector-menu-tabs mw-portlet mw-portlet-views" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="ca-view" class="selected vector-tab-noicon mw-list-item"><a href="/wiki/C23_(C_standard_revision)"><span>Read</span></a></li><li id="ca-edit" class="vector-tab-noicon mw-list-item"><a href="/w/index.php?title=C23_(C_standard_revision)&amp;action=edit" title="Edit this page [e]" accesskey="e"><span>Edit</span></a></li><li id="ca-history" class="vector-tab-noicon mw-list-item"><a href="/w/index.php?title=C23_(C_standard_revision)&amp;action=history" title="Past revisions of this page [h]" accesskey="h"><span>View history</span></a></li> </ul> </div> </div> </nav> <nav class="vector-page-tools-landmark" aria-label="Page tools"> <div id="vector-page-tools-dropdown" class="vector-dropdown vector-page-tools-dropdown" > <input type="checkbox" id="vector-page-tools-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-page-tools-dropdown" class="vector-dropdown-checkbox " aria-label="Tools" > <label id="vector-page-tools-dropdown-label" for="vector-page-tools-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet" aria-hidden="true" ><span class="vector-dropdown-label-text">Tools</span> </label> <div class="vector-dropdown-content"> <div id="vector-page-tools-unpinned-container" class="vector-unpinned-container"> <div id="vector-page-tools" class="vector-page-tools vector-pinnable-element"> <div class="vector-pinnable-header vector-page-tools-pinnable-header vector-pinnable-header-unpinned" data-feature-name="page-tools-pinned" data-pinnable-element-id="vector-page-tools" data-pinned-container-id="vector-page-tools-pinned-container" data-unpinned-container-id="vector-page-tools-unpinned-container" > <div class="vector-pinnable-header-label">Tools</div> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-pin-button" data-event-name="pinnable-header.vector-page-tools.pin">move to sidebar</button> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-unpin-button" data-event-name="pinnable-header.vector-page-tools.unpin">hide</button> </div> <div id="p-cactions" class="vector-menu mw-portlet mw-portlet-cactions emptyPortlet vector-has-collapsible-items" title="More options" > <div class="vector-menu-heading"> Actions </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="ca-more-view" class="selected vector-more-collapsible-item mw-list-item"><a href="/wiki/C23_(C_standard_revision)"><span>Read</span></a></li><li id="ca-more-edit" class="vector-more-collapsible-item mw-list-item"><a href="/w/index.php?title=C23_(C_standard_revision)&amp;action=edit" title="Edit this page [e]" accesskey="e"><span>Edit</span></a></li><li id="ca-more-history" class="vector-more-collapsible-item mw-list-item"><a href="/w/index.php?title=C23_(C_standard_revision)&amp;action=history"><span>View history</span></a></li> </ul> </div> </div> <div id="p-tb" class="vector-menu mw-portlet mw-portlet-tb" > <div class="vector-menu-heading"> General </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="t-whatlinkshere" class="mw-list-item"><a href="/wiki/Special:WhatLinksHere/C23_(C_standard_revision)" title="List of all English Wikipedia pages containing links to this page [j]" accesskey="j"><span>What links here</span></a></li><li id="t-recentchangeslinked" class="mw-list-item"><a href="/wiki/Special:RecentChangesLinked/C23_(C_standard_revision)" rel="nofollow" title="Recent changes in pages linked from this page [k]" accesskey="k"><span>Related changes</span></a></li><li id="t-upload" class="mw-list-item"><a href="/wiki/Wikipedia:File_Upload_Wizard" title="Upload files [u]" accesskey="u"><span>Upload file</span></a></li><li id="t-specialpages" class="mw-list-item"><a href="/wiki/Special:SpecialPages" title="A list of all special pages [q]" accesskey="q"><span>Special pages</span></a></li><li id="t-permalink" class="mw-list-item"><a href="/w/index.php?title=C23_(C_standard_revision)&amp;oldid=1254909966" title="Permanent link to this revision of this page"><span>Permanent link</span></a></li><li id="t-info" class="mw-list-item"><a href="/w/index.php?title=C23_(C_standard_revision)&amp;action=info" title="More information about this page"><span>Page information</span></a></li><li id="t-cite" class="mw-list-item"><a href="/w/index.php?title=Special:CiteThisPage&amp;page=C23_%28C_standard_revision%29&amp;id=1254909966&amp;wpFormIdentifier=titleform" title="Information on how to cite this page"><span>Cite this page</span></a></li><li id="t-urlshortener" class="mw-list-item"><a href="/w/index.php?title=Special:UrlShortener&amp;url=https%3A%2F%2Fen.wikipedia.org%2Fwiki%2FC23_%28C_standard_revision%29"><span>Get shortened URL</span></a></li><li id="t-urlshortener-qrcode" class="mw-list-item"><a href="/w/index.php?title=Special:QrCode&amp;url=https%3A%2F%2Fen.wikipedia.org%2Fwiki%2FC23_%28C_standard_revision%29"><span>Download QR code</span></a></li> </ul> </div> </div> <div id="p-coll-print_export" class="vector-menu mw-portlet mw-portlet-coll-print_export" > <div class="vector-menu-heading"> Print/export </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="coll-download-as-rl" class="mw-list-item"><a href="/w/index.php?title=Special:DownloadAsPdf&amp;page=C23_%28C_standard_revision%29&amp;action=show-download-screen" title="Download this page as a PDF file"><span>Download as PDF</span></a></li><li id="t-print" class="mw-list-item"><a href="/w/index.php?title=C23_(C_standard_revision)&amp;printable=yes" title="Printable version of this page [p]" accesskey="p"><span>Printable version</span></a></li> </ul> </div> </div> <div id="p-wikibase-otherprojects" class="vector-menu mw-portlet mw-portlet-wikibase-otherprojects" > <div class="vector-menu-heading"> In other projects </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="t-wikibase" class="wb-otherproject-link wb-otherproject-wikibase-dataitem mw-list-item"><a href="https://www.wikidata.org/wiki/Special:EntityPage/Q67693987" title="Structured data on this page hosted by Wikidata [g]" accesskey="g"><span>Wikidata item</span></a></li> </ul> </div> </div> </div> </div> </div> </div> </nav> </div> </div> </div> <div class="vector-column-end"> <div class="vector-sticky-pinned-container"> <nav class="vector-page-tools-landmark" aria-label="Page tools"> <div id="vector-page-tools-pinned-container" class="vector-pinned-container"> </div> </nav> <nav class="vector-appearance-landmark" aria-label="Appearance"> <div id="vector-appearance-pinned-container" class="vector-pinned-container"> <div id="vector-appearance" class="vector-appearance vector-pinnable-element"> <div class="vector-pinnable-header vector-appearance-pinnable-header vector-pinnable-header-pinned" data-feature-name="appearance-pinned" data-pinnable-element-id="vector-appearance" data-pinned-container-id="vector-appearance-pinned-container" data-unpinned-container-id="vector-appearance-unpinned-container" > <div class="vector-pinnable-header-label">Appearance</div> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-pin-button" data-event-name="pinnable-header.vector-appearance.pin">move to sidebar</button> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-unpin-button" data-event-name="pinnable-header.vector-appearance.unpin">hide</button> </div> </div> </div> </nav> </div> </div> <div id="bodyContent" class="vector-body" aria-labelledby="firstHeading" data-mw-ve-target-container> <div class="vector-body-before-content"> <div class="mw-indicators"> </div> <div id="siteSub" class="noprint">From Wikipedia, the free encyclopedia</div> </div> <div id="contentSub"><div id="mw-content-subtitle"></div></div> <div id="mw-content-text" class="mw-body-content"><div class="mw-content-ltr mw-parser-output" lang="en" dir="ltr"><div class="shortdescription nomobile noexcerpt noprint searchaux" style="display:none">C programming language standard, current revision</div> <style data-mw-deduplicate="TemplateStyles:r1129693374">.mw-parser-output .hlist dl,.mw-parser-output .hlist ol,.mw-parser-output .hlist ul{margin:0;padding:0}.mw-parser-output .hlist dd,.mw-parser-output .hlist dt,.mw-parser-output .hlist li{margin:0;display:inline}.mw-parser-output .hlist.inline,.mw-parser-output .hlist.inline dl,.mw-parser-output .hlist.inline ol,.mw-parser-output .hlist.inline ul,.mw-parser-output .hlist dl dl,.mw-parser-output .hlist dl ol,.mw-parser-output .hlist dl ul,.mw-parser-output .hlist ol dl,.mw-parser-output .hlist ol ol,.mw-parser-output .hlist ol ul,.mw-parser-output .hlist ul dl,.mw-parser-output .hlist ul ol,.mw-parser-output .hlist ul ul{display:inline}.mw-parser-output .hlist .mw-empty-li{display:none}.mw-parser-output .hlist dt::after{content:": "}.mw-parser-output .hlist dd::after,.mw-parser-output .hlist li::after{content:" · ";font-weight:bold}.mw-parser-output .hlist dd:last-child::after,.mw-parser-output .hlist dt:last-child::after,.mw-parser-output .hlist li:last-child::after{content:none}.mw-parser-output .hlist dd dd:first-child::before,.mw-parser-output .hlist dd dt:first-child::before,.mw-parser-output .hlist dd li:first-child::before,.mw-parser-output .hlist dt dd:first-child::before,.mw-parser-output .hlist dt dt:first-child::before,.mw-parser-output .hlist dt li:first-child::before,.mw-parser-output .hlist li dd:first-child::before,.mw-parser-output .hlist li dt:first-child::before,.mw-parser-output .hlist li li:first-child::before{content:" (";font-weight:normal}.mw-parser-output .hlist dd dd:last-child::after,.mw-parser-output .hlist dd dt:last-child::after,.mw-parser-output .hlist dd li:last-child::after,.mw-parser-output .hlist dt dd:last-child::after,.mw-parser-output .hlist dt dt:last-child::after,.mw-parser-output .hlist dt li:last-child::after,.mw-parser-output .hlist li dd:last-child::after,.mw-parser-output .hlist li dt:last-child::after,.mw-parser-output .hlist li li:last-child::after{content:")";font-weight:normal}.mw-parser-output .hlist ol{counter-reset:listitem}.mw-parser-output .hlist ol>li{counter-increment:listitem}.mw-parser-output .hlist ol>li::before{content:" "counter(listitem)"\a0 "}.mw-parser-output .hlist dd ol>li:first-child::before,.mw-parser-output .hlist dt ol>li:first-child::before,.mw-parser-output .hlist li ol>li:first-child::before{content:" ("counter(listitem)"\a0 "}</style><style data-mw-deduplicate="TemplateStyles:r1246091330">.mw-parser-output .sidebar{width:22em;float:right;clear:right;margin:0.5em 0 1em 1em;background:var(--background-color-neutral-subtle,#f8f9fa);border:1px solid var(--border-color-base,#a2a9b1);padding:0.2em;text-align:center;line-height:1.4em;font-size:88%;border-collapse:collapse;display:table}body.skin-minerva .mw-parser-output .sidebar{display:table!important;float:right!important;margin:0.5em 0 1em 1em!important}.mw-parser-output .sidebar-subgroup{width:100%;margin:0;border-spacing:0}.mw-parser-output .sidebar-left{float:left;clear:left;margin:0.5em 1em 1em 0}.mw-parser-output .sidebar-none{float:none;clear:both;margin:0.5em 1em 1em 0}.mw-parser-output .sidebar-outer-title{padding:0 0.4em 0.2em;font-size:125%;line-height:1.2em;font-weight:bold}.mw-parser-output .sidebar-top-image{padding:0.4em}.mw-parser-output .sidebar-top-caption,.mw-parser-output .sidebar-pretitle-with-top-image,.mw-parser-output .sidebar-caption{padding:0.2em 0.4em 0;line-height:1.2em}.mw-parser-output .sidebar-pretitle{padding:0.4em 0.4em 0;line-height:1.2em}.mw-parser-output .sidebar-title,.mw-parser-output .sidebar-title-with-pretitle{padding:0.2em 0.8em;font-size:145%;line-height:1.2em}.mw-parser-output .sidebar-title-with-pretitle{padding:0.1em 0.4em}.mw-parser-output .sidebar-image{padding:0.2em 0.4em 0.4em}.mw-parser-output .sidebar-heading{padding:0.1em 0.4em}.mw-parser-output .sidebar-content{padding:0 0.5em 0.4em}.mw-parser-output .sidebar-content-with-subgroup{padding:0.1em 0.4em 0.2em}.mw-parser-output .sidebar-above,.mw-parser-output .sidebar-below{padding:0.3em 0.8em;font-weight:bold}.mw-parser-output .sidebar-collapse .sidebar-above,.mw-parser-output .sidebar-collapse .sidebar-below{border-top:1px solid #aaa;border-bottom:1px solid #aaa}.mw-parser-output .sidebar-navbar{text-align:right;font-size:115%;padding:0 0.4em 0.4em}.mw-parser-output .sidebar-list-title{padding:0 0.4em;text-align:left;font-weight:bold;line-height:1.6em;font-size:105%}.mw-parser-output .sidebar-list-title-c{padding:0 0.4em;text-align:center;margin:0 3.3em}@media(max-width:640px){body.mediawiki .mw-parser-output .sidebar{width:100%!important;clear:both;float:none!important;margin-left:0!important;margin-right:0!important}}body.skin--responsive .mw-parser-output .sidebar a>img{max-width:none!important}@media screen{html.skin-theme-clientpref-night .mw-parser-output .sidebar:not(.notheme) .sidebar-list-title,html.skin-theme-clientpref-night .mw-parser-output .sidebar:not(.notheme) .sidebar-title-with-pretitle{background:transparent!important}html.skin-theme-clientpref-night .mw-parser-output .sidebar:not(.notheme) .sidebar-title-with-pretitle a{color:var(--color-progressive)!important}}@media screen and (prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .sidebar:not(.notheme) .sidebar-list-title,html.skin-theme-clientpref-os .mw-parser-output .sidebar:not(.notheme) .sidebar-title-with-pretitle{background:transparent!important}html.skin-theme-clientpref-os .mw-parser-output .sidebar:not(.notheme) .sidebar-title-with-pretitle a{color:var(--color-progressive)!important}}@media print{body.ns-0 .mw-parser-output .sidebar{display:none!important}}</style><table class="sidebar nomobile nowraplinks"><tbody><tr><th class="sidebar-title"><a href="/wiki/C_(programming_language)#History" title="C (programming language)">C language revisions</a></th></tr><tr><td class="sidebar-content hlist"> <ul><li><a href="/wiki/K%26R_C" class="mw-redirect" title="K&amp;R C">K&amp;R C</a></li> <li><a href="/wiki/ANSI_C" title="ANSI C">ANSI C</a></li> <li><a href="/wiki/C99" title="C99">C99</a></li> <li><a href="/wiki/C11_(C_standard_revision)" title="C11 (C standard revision)">C11</a></li> <li><a href="/wiki/C17_(C_standard_revision)" title="C17 (C standard revision)">C17</a></li> <li><a class="mw-selflink selflink">C23</a></li></ul></td> </tr><tr><td class="sidebar-navbar"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1129693374"><style data-mw-deduplicate="TemplateStyles:r1239400231">.mw-parser-output .navbar{display:inline;font-size:88%;font-weight:normal}.mw-parser-output .navbar-collapse{float:left;text-align:left}.mw-parser-output .navbar-boxtext{word-spacing:0}.mw-parser-output .navbar ul{display:inline-block;white-space:nowrap;line-height:inherit}.mw-parser-output .navbar-brackets::before{margin-right:-0.125em;content:"[ "}.mw-parser-output .navbar-brackets::after{margin-left:-0.125em;content:" ]"}.mw-parser-output .navbar li{word-spacing:-0.125em}.mw-parser-output .navbar a>span,.mw-parser-output .navbar a>abbr{text-decoration:inherit}.mw-parser-output .navbar-mini abbr{font-variant:small-caps;border-bottom:none;text-decoration:none;cursor:inherit}.mw-parser-output .navbar-ct-full{font-size:114%;margin:0 7em}.mw-parser-output .navbar-ct-mini{font-size:114%;margin:0 4em}html.skin-theme-clientpref-night .mw-parser-output .navbar li a abbr{color:var(--color-base)!important}@media(prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .navbar li a abbr{color:var(--color-base)!important}}@media print{.mw-parser-output .navbar{display:none!important}}</style><div class="navbar plainlinks hlist navbar-mini"><ul><li class="nv-view"><a href="/wiki/Template:C_language_revisions" title="Template:C language revisions"><abbr title="View this template">v</abbr></a></li><li class="nv-talk"><a href="/wiki/Template_talk:C_language_revisions" title="Template talk:C language revisions"><abbr title="Discuss this template">t</abbr></a></li><li class="nv-edit"><a href="/wiki/Special:EditPage/Template:C_language_revisions" title="Special:EditPage/Template:C language revisions"><abbr title="Edit this template">e</abbr></a></li></ul></div></td></tr></tbody></table> <p><b>C23</b>, formally <b>ISO/IEC 9899:2024</b>, is the current <a href="/wiki/Open_standard" title="Open standard">open standard</a> for the <a href="/wiki/C_(programming_language)" title="C (programming language)">C</a> programming language, which supersedes <a href="/wiki/C17_(C_standard_revision)" title="C17 (C standard revision)">C17</a> (standard ISO/IEC 9899:2018).<sup id="cite_ref-HistoryOfC_1-0" class="reference"><a href="#cite_note-HistoryOfC-1"><span class="cite-bracket">&#91;</span>1<span class="cite-bracket">&#93;</span></a></sup> It was started in 2016 informally as C2x,<sup id="cite_ref-C2xCharter_2-0" class="reference"><a href="#cite_note-C2xCharter-2"><span class="cite-bracket">&#91;</span>2<span class="cite-bracket">&#93;</span></a></sup> and was published on October 31, 2024.<sup id="cite_ref-3" class="reference"><a href="#cite_note-3"><span class="cite-bracket">&#91;</span>3<span class="cite-bracket">&#93;</span></a></sup> The freely available draft most similar to the one published is document N3220<sup id="cite_ref-N3220_4-0" class="reference"><a href="#cite_note-N3220-4"><span class="cite-bracket">&#91;</span>4<span class="cite-bracket">&#93;</span></a></sup> (see <a href="#Available_texts">Available texts</a>, below). The first WG14 meeting for the C2x draft was held in October 2019,<sup id="cite_ref-N2437_5-0" class="reference"><a href="#cite_note-N2437-5"><span class="cite-bracket">&#91;</span>5<span class="cite-bracket">&#93;</span></a></sup> virtual remote meetings were held in 2020 due to the <a href="/wiki/COVID-19_pandemic" title="COVID-19 pandemic">COVID-19 pandemic</a>, then various teleconference meetings continued to occur through 2024. </p><p>In C23, the value of __STDC_VERSION__ changes from 201710L to 202311L. The common names "C17" and "C23" reflect these values, which are frozen prior to final adoption, rather than the years in the ISO standards identifiers (9899:2018 and 9899:2024). </p> <meta property="mw:PageProp/toc" /> <div class="mw-heading mw-heading2"><h2 id="Features">Features</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C23_(C_standard_revision)&amp;action=edit&amp;section=1" title="Edit section: Features"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Changes integrated into the latest working draft of C23 are listed below.<sup id="cite_ref-N3096_6-0" class="reference"><a href="#cite_note-N3096-6"><span class="cite-bracket">&#91;</span>6<span class="cite-bracket">&#93;</span></a></sup> </p> <div class="mw-heading mw-heading3"><h3 id="Standard_Library">Standard Library</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C23_(C_standard_revision)&amp;action=edit&amp;section=2" title="Edit section: Standard Library"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <div class="mw-heading mw-heading4"><h4 id="New_functions">New functions</h4><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C23_(C_standard_revision)&amp;action=edit&amp;section=3" title="Edit section: New functions"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <ul><li>Add <code>memset_explicit()</code> function in <code>&lt;<a href="/wiki/String.h" class="mw-redirect" title="String.h">string.h</a>&gt;</code> to erase sensitive data, where memory store must always be performed regardless of optimizations.<sup id="cite_ref-N2897_7-0" class="reference"><a href="#cite_note-N2897-7"><span class="cite-bracket">&#91;</span>7<span class="cite-bracket">&#93;</span></a></sup></li> <li>Add <code><a href="/wiki/Memccpy" class="mw-redirect" title="Memccpy">memccpy</a>()</code> function in <code>&lt;string.h&gt;</code> to efficiently concatenate strings – similar to <a href="/wiki/POSIX" title="POSIX">POSIX</a> and <a href="/wiki/System_V_Interface_Definition" title="System V Interface Definition">SVID</a> C extensions.<sup id="cite_ref-N2349_8-0" class="reference"><a href="#cite_note-N2349-8"><span class="cite-bracket">&#91;</span>8<span class="cite-bracket">&#93;</span></a></sup></li> <li>Add <code><a href="/wiki/Strdup" class="mw-redirect" title="Strdup">strdup</a>()</code> and <code>strndup()</code> functions in <code>&lt;string.h&gt;</code> to allocate a copy of a string – similar to <a href="/wiki/POSIX" title="POSIX">POSIX</a> and <a href="/wiki/System_V_Interface_Definition" title="System V Interface Definition">SVID</a> C extensions.<sup id="cite_ref-N2353_9-0" class="reference"><a href="#cite_note-N2353-9"><span class="cite-bracket">&#91;</span>9<span class="cite-bracket">&#93;</span></a></sup></li> <li>Add <code>memalignment()</code> function in <code>&lt;<a href="/wiki/Stdlib.h" class="mw-redirect" title="Stdlib.h">stdlib.h</a>&gt;</code> to determine the byte alignment of a pointer.<sup id="cite_ref-N2974_10-0" class="reference"><a href="#cite_note-N2974-10"><span class="cite-bracket">&#91;</span>10<span class="cite-bracket">&#93;</span></a></sup></li> <li>Add bit utility functions / macros / types in new header <code>&lt;<a href="/w/index.php?title=Stdbit.h&amp;action=edit&amp;redlink=1" class="new" title="Stdbit.h (page does not exist)">stdbit.h</a>&gt;</code> to examine many integer types. All start with <code>stdc_</code> to minimize conflict with legacy code and 3rd party libraries.<sup id="cite_ref-N3022_11-0" class="reference"><a href="#cite_note-N3022-11"><span class="cite-bracket">&#91;</span>11<span class="cite-bracket">&#93;</span></a></sup> <ul><li>In the following, replace <code>*</code> with <code>uc</code>, <code>us</code>, <code>ui</code>, <code>ul</code>, <code>ull</code> for five function names, or blank for a type-generic macro.<sup id="cite_ref-N3022_11-1" class="reference"><a href="#cite_note-N3022-11"><span class="cite-bracket">&#91;</span>11<span class="cite-bracket">&#93;</span></a></sup></li> <li>Add <code>stdc_count_ones*()</code> and <code>stdc_count_zeros*()</code> to count number of 1 or 0 bits in value.<sup id="cite_ref-N3022_11-2" class="reference"><a href="#cite_note-N3022-11"><span class="cite-bracket">&#91;</span>11<span class="cite-bracket">&#93;</span></a></sup></li> <li>Add <code>stdc_leading_ones*()</code> and <code>stdc_leading_zeros*()</code> to count leading 1 or 0 bits in value.<sup id="cite_ref-N3022_11-3" class="reference"><a href="#cite_note-N3022-11"><span class="cite-bracket">&#91;</span>11<span class="cite-bracket">&#93;</span></a></sup></li> <li>Add <code>stdc_trailing_ones*()</code> and <code>stdc_trailing_zeros*()</code> to count trailing 1 or 0 bits in value.<sup id="cite_ref-N3022_11-4" class="reference"><a href="#cite_note-N3022-11"><span class="cite-bracket">&#91;</span>11<span class="cite-bracket">&#93;</span></a></sup></li> <li>Add <code>stdc_first_leading_one*()</code> and <code>stdc_first_leading_zero*()</code> to find first leading bit with 1 or 0 in value.<sup id="cite_ref-N3022_11-5" class="reference"><a href="#cite_note-N3022-11"><span class="cite-bracket">&#91;</span>11<span class="cite-bracket">&#93;</span></a></sup></li> <li>Add <code>stdc_first_trailing_one*()</code> and <code>stdc_first_trailing_zero*()</code> to find first trailing bit with 1 or 0 in value.<sup id="cite_ref-N3022_11-6" class="reference"><a href="#cite_note-N3022-11"><span class="cite-bracket">&#91;</span>11<span class="cite-bracket">&#93;</span></a></sup></li> <li>Add <code>stdc_has_single_bit*()</code> to determine if value is an exact power of 2 (return true if and only if there is a single 1 bit).<sup id="cite_ref-N3022_11-7" class="reference"><a href="#cite_note-N3022-11"><span class="cite-bracket">&#91;</span>11<span class="cite-bracket">&#93;</span></a></sup></li> <li>Add <code>stdc_bit_floor*()</code> to determine the largest integral power of 2 that is not greater than value.<sup id="cite_ref-N3022_11-8" class="reference"><a href="#cite_note-N3022-11"><span class="cite-bracket">&#91;</span>11<span class="cite-bracket">&#93;</span></a></sup></li> <li>Add <code>stdc_bit_ceil*()</code> to determine the smallest integral power of 2 that is not less than value.<sup id="cite_ref-N3022_11-9" class="reference"><a href="#cite_note-N3022-11"><span class="cite-bracket">&#91;</span>11<span class="cite-bracket">&#93;</span></a></sup></li> <li>Add <code>stdc_bit_width*()</code> to determine number of bits to represent a value.<sup id="cite_ref-N3022_11-10" class="reference"><a href="#cite_note-N3022-11"><span class="cite-bracket">&#91;</span>11<span class="cite-bracket">&#93;</span></a></sup></li></ul></li> <li>Add <code>timegm()</code> function in <code>&lt;<a href="/wiki/Time.h" class="mw-redirect" title="Time.h">time.h</a>&gt;</code> to convert time structure into calendar time value - similar to function in <a href="/wiki/Glibc" title="Glibc">glibc</a> and <a href="/wiki/Musl" title="Musl">musl</a> libraries.<sup id="cite_ref-N2833_12-0" class="reference"><a href="#cite_note-N2833-12"><span class="cite-bracket">&#91;</span>12<span class="cite-bracket">&#93;</span></a></sup></li> <li>New <code>&lt;<a href="/wiki/Math.h" class="mw-redirect" title="Math.h">math.h</a>&gt;</code> functions based on IEEE 754-2019 recommendations, such as trigonometry functions operating on units of <span class="mwe-math-element"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle \pi x}"> <semantics> <mrow class="MJX-TeXAtom-ORD"> <mstyle displaystyle="true" scriptlevel="0"> <mi>&#x03C0;<!-- π --></mi> <mi>x</mi> </mstyle> </mrow> <annotation encoding="application/x-tex">{\displaystyle \pi x}</annotation> </semantics> </math></span><img src="https://wikimedia.org/api/rest_v1/media/math/render/svg/a14ab905e021afda89bc1847b126c54bf3412ba5" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.338ex; width:2.662ex; height:1.676ex;" alt="{\displaystyle \pi x}"></span> and <code>exp10</code>.<sup id="cite_ref-13" class="reference"><a href="#cite_note-13"><span class="cite-bracket">&#91;</span>13<span class="cite-bracket">&#93;</span></a></sup></li></ul> <div class="mw-heading mw-heading4"><h4 id="Existing_functions">Existing functions</h4><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C23_(C_standard_revision)&amp;action=edit&amp;section=4" title="Edit section: Existing functions"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <ul><li>Add <code>%b</code> binary conversion specifier to <code>printf()</code> function family.<sup id="cite_ref-N2630_14-0" class="reference"><a href="#cite_note-N2630-14"><span class="cite-bracket">&#91;</span>14<span class="cite-bracket">&#93;</span></a></sup></li> <li>Add <code>%b</code> binary conversion specifier to <code>scanf()</code> function family.<sup id="cite_ref-N2630_14-1" class="reference"><a href="#cite_note-N2630-14"><span class="cite-bracket">&#91;</span>14<span class="cite-bracket">&#93;</span></a></sup></li> <li>Add <code>0b</code> and <code>0B</code> binary conversion support to <code>strtol()</code> and <code>wcstol()</code> function families.<sup id="cite_ref-N2630_14-2" class="reference"><a href="#cite_note-N2630-14"><span class="cite-bracket">&#91;</span>14<span class="cite-bracket">&#93;</span></a></sup></li> <li>Make the functions <code><a href="/wiki/Bsearch" class="mw-redirect" title="Bsearch">bsearch</a>()</code>, <code><a href="/wiki/Bsearch" class="mw-redirect" title="Bsearch">bsearch_s</a>()</code>, <code><a href="/wiki/Memchr" class="mw-redirect" title="Memchr">memchr</a>()</code>, <code><a href="/wiki/Strchr" class="mw-redirect" title="Strchr">strchr</a>()</code>, <code><a href="/wiki/Strpbrk" class="mw-redirect" title="Strpbrk">strpbrk</a>()</code>, <code><a href="/wiki/Strrchr" class="mw-redirect" title="Strrchr">strrchr</a>()</code>, <code><a href="/wiki/Strstr" class="mw-redirect" title="Strstr">strstr</a>()</code>, and their wide counterparts <code><a href="/wiki/Wmemchr" class="mw-redirect" title="Wmemchr">wmemchr</a>()</code>, <code><a href="/wiki/Wcschr" class="mw-redirect" title="Wcschr">wcschr</a>()</code>, <code><a href="/wiki/Wcspbrk" class="mw-redirect" title="Wcspbrk">wcspbrk</a>()</code>, <code><a href="/wiki/Wcsrchr" class="mw-redirect" title="Wcsrchr">wcsrchr</a>()</code>, <code><a href="/wiki/Wcsstr" class="mw-redirect" title="Wcsstr">wcsstr</a>()</code> return a const qualified object if one was passed to them.<sup id="cite_ref-N3020_15-0" class="reference"><a href="#cite_note-N3020-15"><span class="cite-bracket">&#91;</span>15<span class="cite-bracket">&#93;</span></a></sup></li></ul> <div class="mw-heading mw-heading3"><h3 id="Preprocessor">Preprocessor</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C23_(C_standard_revision)&amp;action=edit&amp;section=5" title="Edit section: Preprocessor"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <ul><li>Add <code class="mw-highlight mw-highlight-lang-c mw-content-ltr" dir="ltr"><span class="cp">#elifdef</span></code> and <code class="mw-highlight mw-highlight-lang-c mw-content-ltr" dir="ltr"><span class="cp">#elifndef</span></code> <a href="/wiki/Preprocessor_directive" class="mw-redirect" title="Preprocessor directive">directives</a>,<sup id="cite_ref-N2645_16-0" class="reference"><a href="#cite_note-N2645-16"><span class="cite-bracket">&#91;</span>16<span class="cite-bracket">&#93;</span></a></sup> which are essentially equivalent to <code class="mw-highlight mw-highlight-lang-c mw-content-ltr" dir="ltr"><span class="cp">#elif defined</span></code> and <code class="mw-highlight mw-highlight-lang-c mw-content-ltr" dir="ltr"><span class="cp">#elif !defined</span></code>. Both directives were added to <span class="nowrap"><a href="/wiki/C%2B%2B23" title="C++23">C++23</a></span> standard and <a href="/wiki/GNU_Compiler_Collection" title="GNU Compiler Collection">GCC</a> 12.<sup id="cite_ref-17" class="reference"><a href="#cite_note-17"><span class="cite-bracket">&#91;</span>17<span class="cite-bracket">&#93;</span></a></sup></li> <li>Add <code class="mw-highlight mw-highlight-lang-c mw-content-ltr" dir="ltr"><span class="cp">#embed</span></code> directive for binary resource inclusion and <code class="mw-highlight mw-highlight-lang-c mw-content-ltr" dir="ltr"><span class="n">__has_embed</span></code> allowing the availability of a resource to be checked by preprocessor directives.<sup id="cite_ref-N3017_18-0" class="reference"><a href="#cite_note-N3017-18"><span class="cite-bracket">&#91;</span>18<span class="cite-bracket">&#93;</span></a></sup></li> <li>Add <code class="mw-highlight mw-highlight-lang-c mw-content-ltr" dir="ltr"><span class="cp">#warning</span></code> directive for diagnostics.<sup id="cite_ref-N2686_19-0" class="reference"><a href="#cite_note-N2686-19"><span class="cite-bracket">&#91;</span>19<span class="cite-bracket">&#93;</span></a></sup></li> <li>Add <code class="mw-highlight mw-highlight-lang-c mw-content-ltr" dir="ltr"><span class="n">__has_include</span></code> allowing the availability of a header to be checked by preprocessor directives.<sup id="cite_ref-N2799_20-0" class="reference"><a href="#cite_note-N2799-20"><span class="cite-bracket">&#91;</span>20<span class="cite-bracket">&#93;</span></a></sup></li> <li>Add <code class="mw-highlight mw-highlight-lang-c mw-content-ltr" dir="ltr"><span class="n">__has_c_attribute</span></code> allowing the availability of an attribute to be checked by preprocessor directives.<sup id="cite_ref-N2553_21-0" class="reference"><a href="#cite_note-N2553-21"><span class="cite-bracket">&#91;</span>21<span class="cite-bracket">&#93;</span></a></sup> (see "<span class="nowrap">C++</span> compatibility" group for new attribute feature)</li> <li>Add <code class="mw-highlight mw-highlight-lang-c mw-content-ltr" dir="ltr"><span class="n">__VA_OPT__</span></code> functional macro for <a href="/wiki/Variadic_macro" class="mw-redirect" title="Variadic macro">variadic macros</a> which expands to its argument only if a variadic argument has been passed to the containing macro.<sup id="cite_ref-N3033_22-0" class="reference"><a href="#cite_note-N3033-22"><span class="cite-bracket">&#91;</span>22<span class="cite-bracket">&#93;</span></a></sup></li></ul> <div class="mw-heading mw-heading3"><h3 id="Types">Types</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C23_(C_standard_revision)&amp;action=edit&amp;section=6" title="Edit section: Types"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <ul><li>Add <a href="/wiki/Nullptr_t" class="mw-redirect" title="Nullptr t"><code class="mw-highlight mw-highlight-lang-c mw-content-ltr" style="" dir="ltr"><span class="n">nullptr_t</span></code></a>, a <a href="/wiki/Null_pointer" title="Null pointer">null pointer</a> type.<sup id="cite_ref-N3042_23-0" class="reference"><a href="#cite_note-N3042-23"><span class="cite-bracket">&#91;</span>23<span class="cite-bracket">&#93;</span></a></sup></li> <li>Add <code class="mw-highlight mw-highlight-lang-c mw-content-ltr" dir="ltr"><span class="kt">_BitInt</span><span class="p">(</span><span class="n">N</span><span class="p">)</span></code> and <code class="mw-highlight mw-highlight-lang-c mw-content-ltr" dir="ltr"><span class="kt">unsigned</span><span class="w"> </span><span class="kt">_BitInt</span><span class="p">(</span><span class="n">N</span><span class="p">)</span></code> types for bit-precise integers. Add <code class="mw-highlight mw-highlight-lang-c mw-content-ltr" dir="ltr"><span class="n">BITINT_MAXWIDTH</span></code> macro for maximum bit width.<sup id="cite_ref-N2763_24-0" class="reference"><a href="#cite_note-N2763-24"><span class="cite-bracket">&#91;</span>24<span class="cite-bracket">&#93;</span></a></sup><sup id="cite_ref-N3035_25-0" class="reference"><a href="#cite_note-N3035-25"><span class="cite-bracket">&#91;</span>25<span class="cite-bracket">&#93;</span></a></sup></li> <li>Add <code>ckd_add()</code>, <code>ckd_sub()</code>, <code>ckd_mul()</code> macros for checked integer operations.<sup id="cite_ref-N2867_26-0" class="reference"><a href="#cite_note-N2867-26"><span class="cite-bracket">&#91;</span>26<span class="cite-bracket">&#93;</span></a></sup></li> <li>Variably-modified types (but not <a href="/wiki/Variable-length_array" title="Variable-length array">VLAs</a> which are <a href="/wiki/Automatic_variable" title="Automatic variable">automatic variables</a> allocated on the stack) become a mandatory feature.<sup id="cite_ref-N2778_27-0" class="reference"><a href="#cite_note-N2778-27"><span class="cite-bracket">&#91;</span>27<span class="cite-bracket">&#93;</span></a></sup></li> <li>Better support for using <code><a href="/wiki/Const_(computer_programming)" title="Const (computer programming)">const</a></code> with arrays.<sup id="cite_ref-N2607_28-0" class="reference"><a href="#cite_note-N2607-28"><span class="cite-bracket">&#91;</span>28<span class="cite-bracket">&#93;</span></a></sup></li> <li>Standardization of the <code><a href="/wiki/Typeof" title="Typeof">typeof</a>(...)</code> operator.<sup id="cite_ref-N2899_29-0" class="reference"><a href="#cite_note-N2899-29"><span class="cite-bracket">&#91;</span>29<span class="cite-bracket">&#93;</span></a></sup></li> <li>The meaning of the <code class="mw-highlight mw-highlight-lang-c mw-content-ltr" dir="ltr"><span class="k">auto</span></code> keyword was changed to cause <a href="/wiki/Type_inference" title="Type inference">type inference</a> while also retaining its old meaning of a <a href="/wiki/Storage_class_specifier" class="mw-redirect" title="Storage class specifier">storage class specifier</a> if used alongside a type. Unlike <a href="/wiki/C%2B%2B" title="C++">C++</a>, C23 allows type inference only for object definitions (no inferring function return type or function parameter type).<sup id="cite_ref-N3007_30-0" class="reference"><a href="#cite_note-N3007-30"><span class="cite-bracket">&#91;</span>30<span class="cite-bracket">&#93;</span></a></sup></li> <li>Compatibility rules for structure, union, and enumerated types were changed to allow a redeclaration of a compatible type with the same tag.<sup id="cite_ref-N3037_31-0" class="reference"><a href="#cite_note-N3037-31"><span class="cite-bracket">&#91;</span>31<span class="cite-bracket">&#93;</span></a></sup></li> <li>Exact-width integer may now exceed <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">intmax_t</code> (N2888).<sup id="cite_ref-shep2207_32-0" class="reference"><a href="#cite_note-shep2207-32"><span class="cite-bracket">&#91;</span>32<span class="cite-bracket">&#93;</span></a></sup></li></ul> <div class="mw-heading mw-heading3"><h3 id="Constants">Constants</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C23_(C_standard_revision)&amp;action=edit&amp;section=7" title="Edit section: Constants"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <ul><li>Add <a href="/wiki/Nullptr" class="mw-redirect" title="Nullptr"><code class="mw-highlight mw-highlight-lang-c mw-content-ltr" style="" dir="ltr"><span class="n">nullptr</span></code></a> constant for <code>nullptr_t</code> type.<sup id="cite_ref-N3042_23-1" class="reference"><a href="#cite_note-N3042-23"><span class="cite-bracket">&#91;</span>23<span class="cite-bracket">&#93;</span></a></sup></li> <li>Add <code>wb</code> and <code>uwb</code> integer literal suffixes for <code class="mw-highlight mw-highlight-lang-c mw-content-ltr" dir="ltr"><span class="kt">_BitInt</span><span class="p">(</span><span class="n">N</span><span class="p">)</span></code> and <code class="mw-highlight mw-highlight-lang-c mw-content-ltr" dir="ltr"><span class="kt">unsigned</span><span class="w"> </span><span class="kt">_BitInt</span><span class="p">(</span><span class="n">N</span><span class="p">)</span></code> types,<sup id="cite_ref-N2775_33-0" class="reference"><a href="#cite_note-N2775-33"><span class="cite-bracket">&#91;</span>33<span class="cite-bracket">&#93;</span></a></sup> such as <code class="mw-highlight mw-highlight-lang-c mw-content-ltr" dir="ltr"><span class="mi">6u</span><span class="n">wb</span></code> yields an <code>unsigned _BitInt(3)</code>, and <code class="mw-highlight mw-highlight-lang-c mw-content-ltr" dir="ltr"><span class="mi">-6</span><span class="n">wb</span></code> yields a <code>signed _BitInt(4)</code> which has three value bits and one sign bit.</li> <li>Add <code>0b</code> and <code>0B</code> <a href="/wiki/Integer_literal" title="Integer literal">binary literal constant</a> prefixes,<sup id="cite_ref-N2549_34-0" class="reference"><a href="#cite_note-N2549-34"><span class="cite-bracket">&#91;</span>34<span class="cite-bracket">&#93;</span></a></sup> such as <code class="mw-highlight mw-highlight-lang-c mw-content-ltr" dir="ltr"><span class="mb">0b10101010</span></code> (equating to 0xAA).</li> <li>Add <code>'</code> digit separator to literal constants,<sup id="cite_ref-N2626_35-0" class="reference"><a href="#cite_note-N2626-35"><span class="cite-bracket">&#91;</span>35<span class="cite-bracket">&#93;</span></a></sup> such as <code class="mw-highlight mw-highlight-lang-c mw-content-ltr" dir="ltr"><span class="mh">0xFE&#39;DC&#39;BA&#39;98</span></code> (equating to 0xFEDCBA98), <code class="mw-highlight mw-highlight-lang-c mw-content-ltr" dir="ltr"><span class="mi">299&#39;792&#39;458</span></code> (equating to <a href="/wiki/Speed_of_light" title="Speed of light">299792458</a>), <code class="mw-highlight mw-highlight-lang-c mw-content-ltr" dir="ltr"><span class="mf">1.414&#39;213&#39;562</span></code> (equating to <a href="/wiki/Square_root_of_2" title="Square root of 2">1.414213562</a>).</li> <li>Add the ability to specify the underlying type of an <code><a href="/wiki/Enumerated_type" title="Enumerated type">enum</a></code>.<sup id="cite_ref-N3030_36-0" class="reference"><a href="#cite_note-N3030-36"><span class="cite-bracket">&#91;</span>36<span class="cite-bracket">&#93;</span></a></sup></li> <li>Allow <code class="mw-highlight mw-highlight-lang-c mw-content-ltr" dir="ltr"><span class="k">enum</span></code>s with no fixed underlying type to store values that are not representable by <code class="mw-highlight mw-highlight-lang-c mw-content-ltr" dir="ltr"><span class="kt">int</span></code>.<sup id="cite_ref-N3029_37-0" class="reference"><a href="#cite_note-N3029-37"><span class="cite-bracket">&#91;</span>37<span class="cite-bracket">&#93;</span></a></sup></li></ul> <div class="mw-heading mw-heading3"><h3 id="Keywords">Keywords</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C23_(C_standard_revision)&amp;action=edit&amp;section=8" title="Edit section: Keywords"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <ul><li>Add <code class="mw-highlight mw-highlight-lang-c mw-content-ltr" dir="ltr"><span class="nb">true</span></code> and <code class="mw-highlight mw-highlight-lang-c mw-content-ltr" dir="ltr"><span class="nb">false</span></code> keywords.<sup id="cite_ref-N2935_38-0" class="reference"><a href="#cite_note-N2935-38"><span class="cite-bracket">&#91;</span>38<span class="cite-bracket">&#93;</span></a></sup></li> <li>Add <code class="mw-highlight mw-highlight-lang-c mw-content-ltr" dir="ltr"><span class="k">alignas</span></code>, <code class="mw-highlight mw-highlight-lang-c mw-content-ltr" dir="ltr"><span class="k">alignof</span></code>, <code class="mw-highlight mw-highlight-lang-c mw-content-ltr" dir="ltr"><span class="kt">bool</span></code>, <code class="mw-highlight mw-highlight-lang-c mw-content-ltr" dir="ltr"><span class="k">static_assert</span></code>, <a href="/wiki/Thread-local_storage" title="Thread-local storage"><code class="mw-highlight mw-highlight-lang-c mw-content-ltr" style="" dir="ltr"><span class="k">thread_local</span></code></a> keywords. Previously defined keywords become alternative spellings: <code class="mw-highlight mw-highlight-lang-c mw-content-ltr" dir="ltr"><span class="k">_Alignas</span></code>, <code class="mw-highlight mw-highlight-lang-c mw-content-ltr" dir="ltr"><span class="k">_Alignof</span></code>, <code class="mw-highlight mw-highlight-lang-c mw-content-ltr" dir="ltr"><span class="kt">_Bool</span></code>, <code class="mw-highlight mw-highlight-lang-c mw-content-ltr" dir="ltr"><span class="k">_Static_assert</span></code>, <code class="mw-highlight mw-highlight-lang-c mw-content-ltr" dir="ltr"><span class="k">_Thread_local</span></code>.<sup id="cite_ref-N2934_39-0" class="reference"><a href="#cite_note-N2934-39"><span class="cite-bracket">&#91;</span>39<span class="cite-bracket">&#93;</span></a></sup></li> <li>Add <code class="mw-highlight mw-highlight-lang-c mw-content-ltr" dir="ltr"><span class="kt">_BitInt</span></code> keyword (see "types" group)</li> <li>Add <code class="mw-highlight mw-highlight-lang-c mw-content-ltr" dir="ltr"><span class="n">typeof</span></code> and <code class="mw-highlight mw-highlight-lang-c mw-content-ltr" dir="ltr"><span class="n">typeof_unqual</span></code> keywords (see "types" group)</li> <li>Add <code class="mw-highlight mw-highlight-lang-c mw-content-ltr" dir="ltr"><span class="n">nullptr</span></code> keyword (see "constants" group)</li> <li>Add <code class="mw-highlight mw-highlight-lang-c mw-content-ltr" dir="ltr"><span class="n">constexpr</span></code> keyword (see "other" group)</li> <li>Add <code class="mw-highlight mw-highlight-lang-c mw-content-ltr" dir="ltr"><span class="n">_Decimal32</span></code>, <code class="mw-highlight mw-highlight-lang-c mw-content-ltr" dir="ltr"><span class="n">_Decimal64</span></code>, <code class="mw-highlight mw-highlight-lang-c mw-content-ltr" dir="ltr"><span class="n">_Decimal128</span></code> keywords for (optional) <a href="/wiki/Decimal_floating_point" title="Decimal floating point">decimal floating-point</a> arithmetic (see "other" group)</li></ul> <div class="mw-heading mw-heading3"><h3 id="Syntax">Syntax</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C23_(C_standard_revision)&amp;action=edit&amp;section=9" title="Edit section: Syntax"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <ul><li><a href="/wiki/Label_(computer_science)" title="Label (computer science)">Labels</a> can appear before <a href="/wiki/Declaration_(computer_programming)" title="Declaration (computer programming)">declarations</a> and at the end of <a href="/wiki/Statement_(computer_science)#Compound_statements" title="Statement (computer science)">compound statements</a>.<sup id="cite_ref-N2508_40-0" class="reference"><a href="#cite_note-N2508-40"><span class="cite-bracket">&#91;</span>40<span class="cite-bracket">&#93;</span></a></sup></li> <li>Unnamed parameters in function definitions.<sup id="cite_ref-N2510_41-0" class="reference"><a href="#cite_note-N2510-41"><span class="cite-bracket">&#91;</span>41<span class="cite-bracket">&#93;</span></a></sup></li> <li>Zero initialization with <code>{}</code> (including initialization of VLAs).<sup id="cite_ref-N2900_42-0" class="reference"><a href="#cite_note-N2900-42"><span class="cite-bracket">&#91;</span>42<span class="cite-bracket">&#93;</span></a></sup></li> <li><a href="/wiki/Variadic_functions" class="mw-redirect" title="Variadic functions">Variadic functions</a> no longer need a named argument before the ellipsis and the <code class="mw-highlight mw-highlight-lang-c mw-content-ltr" dir="ltr"><span class="n">va_start</span></code> macro no longer needs a second argument nor does it evaluate any argument after the first one if present.<sup id="cite_ref-N2975_43-0" class="reference"><a href="#cite_note-N2975-43"><span class="cite-bracket">&#91;</span>43<span class="cite-bracket">&#93;</span></a></sup></li> <li>Add <a href="/wiki/C%2B%2B11" title="C++11">C++11</a> style <a href="/wiki/C%2B%2B11#Attributes" title="C++11">attribute</a> syntax<sup id="cite_ref-N2335_44-0" class="reference"><a href="#cite_note-N2335-44"><span class="cite-bracket">&#91;</span>44<span class="cite-bracket">&#93;</span></a></sup> using double square brackets <code class="mw-highlight mw-highlight-lang-c mw-content-ltr" dir="ltr"><span class="p">[[]]</span></code>. In addition to <a href="/wiki/C%2B%2B11" title="C++11">C++11</a> attributes listed below, add new attributes: <ul><li><code>[[unsequenced]]</code><sup id="cite_ref-:0_45-0" class="reference"><a href="#cite_note-:0-45"><span class="cite-bracket">&#91;</span>45<span class="cite-bracket">&#93;</span></a></sup> allows compiler optimizations for functions producing repeatable outputs only based on their parameters</li> <li><code>[[reproducible]]</code>,<sup id="cite_ref-:0_45-1" class="reference"><a href="#cite_note-:0-45"><span class="cite-bracket">&#91;</span>45<span class="cite-bracket">&#93;</span></a></sup> similar to <code>[[unsequenced]]</code>, but for functions whose call order also matters</li></ul></li> <li>Add single-argument <code><a href="/wiki/Assert.h#static_assert" title="Assert.h">_Static_assert</a></code> for compatibility with <a href="/wiki/C%2B%2B17" title="C++17">C++17</a>.<sup id="cite_ref-N2265_46-0" class="reference"><a href="#cite_note-N2265-46"><span class="cite-bracket">&#91;</span>46<span class="cite-bracket">&#93;</span></a></sup></li> <li>Functions with no arguments listed in the prototype <code>void foo()</code> are understood as taking no arguments (see removal of K&amp;R function declarations)</li></ul> <div class="mw-heading mw-heading3"><h3 id="C++_compatibility"><span id="C.2B.2B_compatibility"></span>C++ compatibility</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C23_(C_standard_revision)&amp;action=edit&amp;section=10" title="Edit section: C++ compatibility"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <ul><li>Various syntax changes improve compatibility with C++, such as <a href="/wiki/Label_(computer_science)" title="Label (computer science)">labels</a> before declarations, unnamed function arguments, zero initialization with <code>{}</code>, variadic functions without named argument, <a href="/wiki/C%2B%2B11" title="C++11">C++11</a> style attributes, <code><a href="/wiki/Assert.h#static_assert" title="Assert.h">_Static_assert</a></code> (see Syntax). For <a href="/wiki/Label_(computer_science)" title="Label (computer science)">labels</a> at the end of compound statements a corresponding change was made to <a href="/wiki/C%2B%2B23" title="C++23">C++23</a>.<sup id="cite_ref-47" class="reference"><a href="#cite_note-47"><span class="cite-bracket">&#91;</span>47<span class="cite-bracket">&#93;</span></a></sup></li> <li>Add C++-style attributes (see Syntax). Add attributes<sup id="cite_ref-N2554_48-0" class="reference"><a href="#cite_note-N2554-48"><span class="cite-bracket">&#91;</span>48<span class="cite-bracket">&#93;</span></a></sup> <code class="mw-highlight mw-highlight-lang-c mw-content-ltr" dir="ltr"><span class="p">[[</span><span class="n">deprecated</span><span class="p">]]</span></code>,<sup id="cite_ref-N2334_49-0" class="reference"><a href="#cite_note-N2334-49"><span class="cite-bracket">&#91;</span>49<span class="cite-bracket">&#93;</span></a></sup> <code class="mw-highlight mw-highlight-lang-c mw-content-ltr" dir="ltr"><span class="p">[[</span><span class="n">fallthrough</span><span class="p">]]</span></code>,<sup id="cite_ref-N2408_50-0" class="reference"><a href="#cite_note-N2408-50"><span class="cite-bracket">&#91;</span>50<span class="cite-bracket">&#93;</span></a></sup> <code class="mw-highlight mw-highlight-lang-c mw-content-ltr" dir="ltr"><span class="p">[[</span><span class="n">maybe_unused</span><span class="p">]]</span></code>,<sup id="cite_ref-N2270_51-0" class="reference"><a href="#cite_note-N2270-51"><span class="cite-bracket">&#91;</span>51<span class="cite-bracket">&#93;</span></a></sup> <code class="mw-highlight mw-highlight-lang-c mw-content-ltr" dir="ltr"><span class="p">[[</span><span class="n">nodiscard</span><span class="p">]]</span></code>,<sup id="cite_ref-N2267_52-0" class="reference"><a href="#cite_note-N2267-52"><span class="cite-bracket">&#91;</span>52<span class="cite-bracket">&#93;</span></a></sup> and <code class="mw-highlight mw-highlight-lang-c mw-content-ltr" dir="ltr"><span class="p">[[</span><span class="k">noreturn</span><span class="p">]]</span></code> attribute for compatibility with <a href="/wiki/C%2B%2B11" title="C++11">C++11</a>, then deprecate <code class="mw-highlight mw-highlight-lang-c mw-content-ltr" dir="ltr"><span class="k">_Noreturn</span></code>, <code class="mw-highlight mw-highlight-lang-c mw-content-ltr" dir="ltr"><span class="k">noreturn</span></code>, header <code>&lt;stdnoreturn.h&gt;</code> features introduced in <a href="/wiki/C11_(C_standard_revision)" title="C11 (C standard revision)">C11</a>.<sup id="cite_ref-N2764_53-0" class="reference"><a href="#cite_note-N2764-53"><span class="cite-bracket">&#91;</span>53<span class="cite-bracket">&#93;</span></a></sup> Duplicate attributes are allowed for compatibility with <a href="/wiki/C%2B%2B23" title="C++23">C++23</a>.<sup id="cite_ref-N2557_54-0" class="reference"><a href="#cite_note-N2557-54"><span class="cite-bracket">&#91;</span>54<span class="cite-bracket">&#93;</span></a></sup> All standard attributes can also be surrounded by double underscores (e.g. <code class="mw-highlight mw-highlight-lang-c mw-content-ltr" dir="ltr"><span class="p">[[</span><span class="n">__deprecated__</span><span class="p">]]</span></code> is equivalent to <code class="mw-highlight mw-highlight-lang-c mw-content-ltr" dir="ltr"><span class="p">[[</span><span class="n">deprecated</span><span class="p">]]</span></code>).</li> <li>Add <code>u8</code> prefix for <a href="/wiki/Character_literal" title="Character literal">character literals</a> to represent <a href="/wiki/UTF-8" title="UTF-8">UTF-8</a> encoding for compatibility with <a href="/wiki/C%2B%2B17" title="C++17">C++17</a>.<sup id="cite_ref-N2418_55-0" class="reference"><a href="#cite_note-N2418-55"><span class="cite-bracket">&#91;</span>55<span class="cite-bracket">&#93;</span></a></sup><sup id="cite_ref-56" class="reference"><a href="#cite_note-56"><span class="cite-bracket">&#91;</span>56<span class="cite-bracket">&#93;</span></a></sup></li> <li>Add <code class="mw-highlight mw-highlight-lang-c mw-content-ltr" dir="ltr"><span class="cp">#elifdef</span></code> and <code class="mw-highlight mw-highlight-lang-c mw-content-ltr" dir="ltr"><span class="cp">#elifndef</span></code> preprocessing directives for compatibility with <a href="/wiki/C%2B%2B23" title="C++23">C++23</a>.<sup id="cite_ref-N2645_16-1" class="reference"><a href="#cite_note-N2645-16"><span class="cite-bracket">&#91;</span>16<span class="cite-bracket">&#93;</span></a></sup> (see "preprocessor" group)</li></ul> <div class="mw-heading mw-heading3"><h3 id="Other_features">Other features</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C23_(C_standard_revision)&amp;action=edit&amp;section=11" title="Edit section: Other features"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <ul><li>Support for the ISO/IEC 60559:2020, the current version of the <a href="/wiki/IEEE_754" title="IEEE 754">IEEE 754 standard</a> for floating-point arithmetic, with extended binary floating-point arithmetic and (optional) decimal floating-point arithmetic.<sup id="cite_ref-N2341_57-0" class="reference"><a href="#cite_note-N2341-57"><span class="cite-bracket">&#91;</span>57<span class="cite-bracket">&#93;</span></a></sup><sup id="cite_ref-N2601_58-0" class="reference"><a href="#cite_note-N2601-58"><span class="cite-bracket">&#91;</span>58<span class="cite-bracket">&#93;</span></a></sup></li></ul> <ul><li>The <code><a href="/wiki/Constexpr" class="mw-redirect" title="Constexpr">constexpr</a></code> specifier for objects but not functions, unlike <a href="/wiki/Constexpr_(C%2B%2B)" class="mw-redirect" title="Constexpr (C++)">C++'s equivalent</a>.<sup id="cite_ref-N3018_59-0" class="reference"><a href="#cite_note-N3018-59"><span class="cite-bracket">&#91;</span>59<span class="cite-bracket">&#93;</span></a></sup></li> <li>Add <code class="mw-highlight mw-highlight-lang-c mw-content-ltr" dir="ltr"><span class="n">char8_t</span></code> type for storing <a href="/wiki/UTF-8" title="UTF-8">UTF-8</a> encoded data and change the type of u8 character constants and string literals to <code class="mw-highlight mw-highlight-lang-c mw-content-ltr" dir="ltr"><span class="n">char8_t</span></code>. Also, the functions <code>mbrtoc8()</code> and <code>c8rtomb()</code> to convert a narrow multibyte character to UTF-8 encoding and a single code point from UTF-8 to a narrow multibyte character representation respectively.<sup id="cite_ref-N2653_60-0" class="reference"><a href="#cite_note-N2653-60"><span class="cite-bracket">&#91;</span>60<span class="cite-bracket">&#93;</span></a></sup></li> <li>Clarify that all <code class="mw-highlight mw-highlight-lang-c mw-content-ltr" dir="ltr"><span class="n">char16_t</span></code> strings and literals shall be <a href="/wiki/UTF-16" title="UTF-16">UTF-16</a> encoded, and all <code class="mw-highlight mw-highlight-lang-c mw-content-ltr" dir="ltr"><span class="n">char32_t</span></code> strings and literals shall be <a href="/wiki/UTF-32" title="UTF-32">UTF-32</a> encoded, unless otherwise explicitly specified.<sup id="cite_ref-N2728_61-0" class="reference"><a href="#cite_note-N2728-61"><span class="cite-bracket">&#91;</span>61<span class="cite-bracket">&#93;</span></a></sup></li> <li>Allow <a href="/wiki/Storage_class_specifier" class="mw-redirect" title="Storage class specifier">storage class specifiers</a> to appear in compound literal definition.<sup id="cite_ref-N3038_62-0" class="reference"><a href="#cite_note-N3038-62"><span class="cite-bracket">&#91;</span>62<span class="cite-bracket">&#93;</span></a></sup></li></ul> <div class="mw-heading mw-heading2"><h2 id="Obsolete_features">Obsolete features</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C23_(C_standard_revision)&amp;action=edit&amp;section=12" title="Edit section: Obsolete features"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Some old obsolete features are either removed or deprecated from the working draft of C23: </p> <dl><dd><ul><li>Remove <a href="/wiki/Digraphs_and_trigraphs_(programming)#C" title="Digraphs and trigraphs (programming)">trigraphs</a>.<sup id="cite_ref-N2940_63-0" class="reference"><a href="#cite_note-N2940-63"><span class="cite-bracket">&#91;</span>63<span class="cite-bracket">&#93;</span></a></sup></li> <li>Remove <a href="/wiki/C_(programming_language)#K&amp;R_C" title="C (programming language)">K&amp;R</a> function definitions/declarations (with no information about the function arguments).<sup id="cite_ref-N2432_64-0" class="reference"><a href="#cite_note-N2432-64"><span class="cite-bracket">&#91;</span>64<span class="cite-bracket">&#93;</span></a></sup><sup id="cite_ref-N2841_65-0" class="reference"><a href="#cite_note-N2841-65"><span class="cite-bracket">&#91;</span>65<span class="cite-bracket">&#93;</span></a></sup></li> <li>Remove representations for signed integers other than two's complement. <a href="/wiki/Two%27s_complement" title="Two&#39;s complement">Two's complement</a> signed integer representation will be required.<sup id="cite_ref-N2412_66-0" class="reference"><a href="#cite_note-N2412-66"><span class="cite-bracket">&#91;</span>66<span class="cite-bracket">&#93;</span></a></sup></li> <li>The <code class="mw-highlight mw-highlight-lang-c mw-content-ltr" dir="ltr"><span class="o">*</span><span class="n">_HAS_SUBNORM</span></code> macros in <code>&lt;float.h&gt;</code> are obsolescent features.<sup id="cite_ref-N2993_67-0" class="reference"><a href="#cite_note-N2993-67"><span class="cite-bracket">&#91;</span>67<span class="cite-bracket">&#93;</span></a></sup></li></ul></dd></dl> <div class="mw-heading mw-heading2"><h2 id="Compiler_support">Compiler support</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C23_(C_standard_revision)&amp;action=edit&amp;section=13" title="Edit section: Compiler support"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>The following compilers implement an experimental compiler flag to support this standard: </p> <ul><li><a href="/wiki/GNU_Compiler_Collection" title="GNU Compiler Collection">GCC</a> 9,<sup id="cite_ref-68" class="reference"><a href="#cite_note-68"><span class="cite-bracket">&#91;</span>68<span class="cite-bracket">&#93;</span></a></sup></li> <li><a href="/wiki/Clang" title="Clang">Clang</a> 9.0,<sup id="cite_ref-69" class="reference"><a href="#cite_note-69"><span class="cite-bracket">&#91;</span>69<span class="cite-bracket">&#93;</span></a></sup></li> <li><a href="/wiki/LCC_(compiler)#Pelles_C" title="LCC (compiler)">Pelles C</a> 11.00<sup id="cite_ref-70" class="reference"><a href="#cite_note-70"><span class="cite-bracket">&#91;</span>70<span class="cite-bracket">&#93;</span></a></sup></li></ul> <div class="mw-heading mw-heading2"><h2 id="Available_texts">Available texts</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C23_(C_standard_revision)&amp;action=edit&amp;section=14" title="Edit section: Available texts"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Like other editions of the C standard, the official ISO text of the standard is not freely available. </p><p>The latest working draft pre-C23 that was made public was N3096,<sup id="cite_ref-N3096_6-1" class="reference"><a href="#cite_note-N3096-6"><span class="cite-bracket">&#91;</span>6<span class="cite-bracket">&#93;</span></a></sup> dated 2023-04-01. In the months that followed this draft, hundreds of changes<sup id="cite_ref-N3150_71-0" class="reference"><a href="#cite_note-N3150-71"><span class="cite-bracket">&#91;</span>71<span class="cite-bracket">&#93;</span></a></sup> were made before producing the working draft N3149 dated 2023-07-09 and the official draft standard N3219 dated 2024-02-22.<sup id="cite_ref-N3150_71-1" class="reference"><a href="#cite_note-N3150-71"><span class="cite-bracket">&#91;</span>71<span class="cite-bracket">&#93;</span></a></sup><sup id="cite_ref-N3221_72-0" class="reference"><a href="#cite_note-N3221-72"><span class="cite-bracket">&#91;</span>72<span class="cite-bracket">&#93;</span></a></sup> Neither of these later drafts is public.<sup id="cite_ref-N3150_71-2" class="reference"><a href="#cite_note-N3150-71"><span class="cite-bracket">&#91;</span>71<span class="cite-bracket">&#93;</span></a></sup><sup id="cite_ref-N3221_72-1" class="reference"><a href="#cite_note-N3221-72"><span class="cite-bracket">&#91;</span>72<span class="cite-bracket">&#93;</span></a></sup> </p><p>On the same date that the draft standard N3219 was announced, a new working draft N3220<sup id="cite_ref-N3220_4-1" class="reference"><a href="#cite_note-N3220-4"><span class="cite-bracket">&#91;</span>4<span class="cite-bracket">&#93;</span></a></sup> was made public. While this document is officially described<sup id="cite_ref-N3221_72-2" class="reference"><a href="#cite_note-N3221-72"><span class="cite-bracket">&#91;</span>72<span class="cite-bracket">&#93;</span></a></sup> as a draft of the future version "C2Y" of the standard, the accompanying "Editor's Report" specifies that N3220 differs from the draft C23 standard N3219 only by a fix to one footnote in Annex K.<sup id="cite_ref-N3221_72-3" class="reference"><a href="#cite_note-N3221-72"><span class="cite-bracket">&#91;</span>72<span class="cite-bracket">&#93;</span></a></sup> </p> <div class="mw-heading mw-heading2"><h2 id="See_also">See also</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C23_(C_standard_revision)&amp;action=edit&amp;section=15" title="Edit section: See also"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <style data-mw-deduplicate="TemplateStyles:r1239009302">.mw-parser-output .portalbox{padding:0;margin:0.5em 0;display:table;box-sizing:border-box;max-width:175px;list-style:none}.mw-parser-output .portalborder{border:1px solid var(--border-color-base,#a2a9b1);padding:0.1em;background:var(--background-color-neutral-subtle,#f8f9fa)}.mw-parser-output .portalbox-entry{display:table-row;font-size:85%;line-height:110%;height:1.9em;font-style:italic;font-weight:bold}.mw-parser-output .portalbox-image{display:table-cell;padding:0.2em;vertical-align:middle;text-align:center}.mw-parser-output .portalbox-link{display:table-cell;padding:0.2em 0.2em 0.2em 0.3em;vertical-align:middle}@media(min-width:720px){.mw-parser-output .portalleft{clear:left;float:left;margin:0.5em 1em 0.5em 0}.mw-parser-output .portalright{clear:right;float:right;margin:0.5em 0 0.5em 1em}}</style><ul role="navigation" aria-label="Portals" class="noprint portalbox portalborder portalright"> <li class="portalbox-entry"><span class="portalbox-image"><span class="noviewer" typeof="mw:File"><a href="/wiki/File:Octicons-terminal.svg" class="mw-file-description"><img alt="icon" src="//upload.wikimedia.org/wikipedia/commons/thumb/6/6f/Octicons-terminal.svg/24px-Octicons-terminal.svg.png" decoding="async" width="24" height="28" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/6/6f/Octicons-terminal.svg/37px-Octicons-terminal.svg.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/6/6f/Octicons-terminal.svg/49px-Octicons-terminal.svg.png 2x" data-file-width="896" data-file-height="1024" /></a></span></span><span class="portalbox-link"><a href="/wiki/Portal:Computer_programming" title="Portal:Computer programming">Computer programming portal</a></span></li></ul> <ul><li><a href="/wiki/C%2B%2B23" title="C++23">C++23</a>, <a href="/wiki/C%2B%2B20" title="C++20">C++20</a>, <a href="/wiki/C%2B%2B17" title="C++17">C++17</a>, <a href="/wiki/C%2B%2B14" title="C++14">C++14</a>, <a href="/wiki/C%2B%2B11" title="C++11">C++11</a>, <a href="/wiki/C%2B%2B03" title="C++03">C++03</a>, <a href="/wiki/C%2B%2B98" class="mw-redirect" title="C++98">C++98</a>, versions of the C++ programming language standard</li> <li><a href="/wiki/Compatibility_of_C_and_C%2B%2B" title="Compatibility of C and C++">Compatibility of C and C++</a></li></ul> <div class="mw-heading mw-heading2"><h2 id="References">References</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C23_(C_standard_revision)&amp;action=edit&amp;section=16" title="Edit section: References"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <style data-mw-deduplicate="TemplateStyles:r1239543626">.mw-parser-output .reflist{margin-bottom:0.5em;list-style-type:decimal}@media screen{.mw-parser-output .reflist{font-size:90%}}.mw-parser-output .reflist .references{font-size:100%;margin-bottom:0;list-style-type:inherit}.mw-parser-output .reflist-columns-2{column-width:30em}.mw-parser-output .reflist-columns-3{column-width:25em}.mw-parser-output .reflist-columns{margin-top:0.3em}.mw-parser-output .reflist-columns ol{margin-top:0}.mw-parser-output .reflist-columns li{page-break-inside:avoid;break-inside:avoid-column}.mw-parser-output .reflist-upper-alpha{list-style-type:upper-alpha}.mw-parser-output .reflist-upper-roman{list-style-type:upper-roman}.mw-parser-output .reflist-lower-alpha{list-style-type:lower-alpha}.mw-parser-output .reflist-lower-greek{list-style-type:lower-greek}.mw-parser-output .reflist-lower-roman{list-style-type:lower-roman}</style><div class="reflist"> <div class="mw-references-wrap mw-references-columns"><ol class="references"> <li id="cite_note-HistoryOfC-1"><span class="mw-cite-backlink"><b><a href="#cite_ref-HistoryOfC_1-0">^</a></b></span> <span class="reference-text"><style data-mw-deduplicate="TemplateStyles:r1238218222">.mw-parser-output cite.citation{font-style:inherit;word-wrap:break-word}.mw-parser-output .citation q{quotes:"\"""\"""'""'"}.mw-parser-output .citation:target{background-color:rgba(0,127,255,0.133)}.mw-parser-output .id-lock-free.id-lock-free a{background:url("//upload.wikimedia.org/wikipedia/commons/6/65/Lock-green.svg")right 0.1em center/9px no-repeat}.mw-parser-output .id-lock-limited.id-lock-limited a,.mw-parser-output .id-lock-registration.id-lock-registration a{background:url("//upload.wikimedia.org/wikipedia/commons/d/d6/Lock-gray-alt-2.svg")right 0.1em center/9px no-repeat}.mw-parser-output .id-lock-subscription.id-lock-subscription a{background:url("//upload.wikimedia.org/wikipedia/commons/a/aa/Lock-red-alt-2.svg")right 0.1em center/9px no-repeat}.mw-parser-output .cs1-ws-icon a{background:url("//upload.wikimedia.org/wikipedia/commons/4/4c/Wikisource-logo.svg")right 0.1em center/12px no-repeat}body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-free a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-limited a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-registration a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-subscription a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .cs1-ws-icon a{background-size:contain;padding:0 1em 0 0}.mw-parser-output .cs1-code{color:inherit;background:inherit;border:none;padding:inherit}.mw-parser-output .cs1-hidden-error{display:none;color:var(--color-error,#d33)}.mw-parser-output .cs1-visible-error{color:var(--color-error,#d33)}.mw-parser-output .cs1-maint{display:none;color:#085;margin-left:0.3em}.mw-parser-output .cs1-kern-left{padding-left:0.2em}.mw-parser-output .cs1-kern-right{padding-right:0.2em}.mw-parser-output .citation .mw-selflink{font-weight:inherit}@media screen{.mw-parser-output .cs1-format{font-size:95%}html.skin-theme-clientpref-night .mw-parser-output .cs1-maint{color:#18911f}}@media screen and (prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .cs1-maint{color:#18911f}}</style><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://en.cppreference.com/w/c/language/history">"History of C"</a>. <i>cppreference.com</i>. 2022-06-27. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20221019191546/https://en.cppreference.com/w/c/language/history">Archived</a> from the original on October 19, 2022.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=cppreference.com&amp;rft.atitle=History+of+C&amp;rft.date=2022-06-27&amp;rft_id=https%3A%2F%2Fen.cppreference.com%2Fw%2Fc%2Flanguage%2Fhistory&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AC23+%28C+standard+revision%29" class="Z3988"></span></span> </li> <li id="cite_note-C2xCharter-2"><span class="mw-cite-backlink"><b><a href="#cite_ref-C2xCharter_2-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2086.htm">"WG14-N2086: C2x Charter"</a>. <i>open-std.org</i>. 2016-09-20. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20221222213708/https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2086.htm">Archived</a> from the original on December 22, 2022.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=open-std.org&amp;rft.atitle=WG14-N2086%3A+C2x+Charter&amp;rft.date=2016-09-20&amp;rft_id=https%3A%2F%2Fwww.open-std.org%2Fjtc1%2Fsc22%2Fwg14%2Fwww%2Fdocs%2Fn2086.htm&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AC23+%28C+standard+revision%29" class="Z3988"></span></span> </li> <li id="cite_note-3"><span class="mw-cite-backlink"><b><a href="#cite_ref-3">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.iso.org/standard/82075.html">"ISO/IEC PRF 9899"</a>. <i>iso.org</i>. <a rel="nofollow" class="external text" href="http://web.archive.org/web/20240919185914/https://www.iso.org/standard/82075.html">Archived</a> from the original on September 19, 2024.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=iso.org&amp;rft.atitle=ISO%2FIEC+PRF+9899&amp;rft_id=https%3A%2F%2Fwww.iso.org%2Fstandard%2F82075.html&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AC23+%28C+standard+revision%29" class="Z3988"></span></span> </li> <li id="cite_note-N3220-4"><span class="mw-cite-backlink">^ <a href="#cite_ref-N3220_4-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-N3220_4-1"><sup><i><b>b</b></i></sup></a></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n3220.pdf">"ISO/IEC 9899:2024 (en) — N3220 working draft"</a> <span class="cs1-format">(PDF)</span>. <i>open-std.org</i>. 2024-02-22.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=open-std.org&amp;rft.atitle=ISO%2FIEC+9899%3A2024+%28en%29+%E2%80%94+N3220+working+draft&amp;rft.date=2024-02-22&amp;rft_id=https%3A%2F%2Fwww.open-std.org%2Fjtc1%2Fsc22%2Fwg14%2Fwww%2Fdocs%2Fn3220.pdf&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AC23+%28C+standard+revision%29" class="Z3988"></span></span> </li> <li id="cite_note-N2437-5"><span class="mw-cite-backlink"><b><a href="#cite_ref-N2437_5-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2437.htm">"WG14-N2437: Agenda for October 2019"</a>. <i>open-std.org</i>. 2019-10-21. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20210305073426/https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2437.htm">Archived</a> from the original on March 5, 2021.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=open-std.org&amp;rft.atitle=WG14-N2437%3A+Agenda+for+October+2019&amp;rft.date=2019-10-21&amp;rft_id=https%3A%2F%2Fwww.open-std.org%2Fjtc1%2Fsc22%2Fwg14%2Fwww%2Fdocs%2Fn2437.htm&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AC23+%28C+standard+revision%29" class="Z3988"></span></span> </li> <li id="cite_note-N3096-6"><span class="mw-cite-backlink">^ <a href="#cite_ref-N3096_6-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-N3096_6-1"><sup><i><b>b</b></i></sup></a></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n3096.pdf">"WG14-N3096: Draft for ISO/IEC 9899:2024"</a> <span class="cs1-format">(PDF)</span>. <i>open-std.org</i>. April 1, 2023. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20230402172459/https://www.open-std.org/jtc1/sc22/wg14/www/docs/n3096.pdf">Archived</a> <span class="cs1-format">(PDF)</span> from the original on April 2, 2023.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=open-std.org&amp;rft.atitle=WG14-N3096%3A+Draft+for+ISO%2FIEC+9899%3A2024&amp;rft.date=2023-04-01&amp;rft_id=https%3A%2F%2Fwww.open-std.org%2Fjtc1%2Fsc22%2Fwg14%2Fwww%2Fdocs%2Fn3096.pdf&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AC23+%28C+standard+revision%29" class="Z3988"></span></span> </li> <li id="cite_note-N2897-7"><span class="mw-cite-backlink"><b><a href="#cite_ref-N2897_7-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2897.htm">"WG14-N2897: memset_explicit()"</a>. <i>open-std.org</i>. 2021-12-27. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20221025074215/https://open-std.org/jtc1/sc22/wg14/www/docs/n2897.htm">Archived</a> from the original on October 25, 2022.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=open-std.org&amp;rft.atitle=WG14-N2897%3A+memset_explicit%28%29&amp;rft.date=2021-12-27&amp;rft_id=https%3A%2F%2Fwww.open-std.org%2Fjtc1%2Fsc22%2Fwg14%2Fwww%2Fdocs%2Fn2897.htm&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AC23+%28C+standard+revision%29" class="Z3988"></span></span> </li> <li id="cite_note-N2349-8"><span class="mw-cite-backlink"><b><a href="#cite_ref-N2349_8-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2349.htm">"WG14-N2349: Toward more efficient string copying and concatenation"</a>. <i>open-std.org</i>. 2019-03-18. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20220930092258/https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2349.htm">Archived</a> from the original on September 30, 2022.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=open-std.org&amp;rft.atitle=WG14-N2349%3A+Toward+more+efficient+string+copying+and+concatenation&amp;rft.date=2019-03-18&amp;rft_id=https%3A%2F%2Fwww.open-std.org%2Fjtc1%2Fsc22%2Fwg14%2Fwww%2Fdocs%2Fn2349.htm&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AC23+%28C+standard+revision%29" class="Z3988"></span></span> </li> <li id="cite_note-N2353-9"><span class="mw-cite-backlink"><b><a href="#cite_ref-N2353_9-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2353.htm">"WG14-N2353: strdup() and strndup()"</a>. <i>open-std.org</i>. 2019-03-18. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20221224063709/https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2353.htm">Archived</a> from the original on December 24, 2022.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=open-std.org&amp;rft.atitle=WG14-N2353%3A+strdup%28%29+and+strndup%28%29&amp;rft.date=2019-03-18&amp;rft_id=https%3A%2F%2Fwww.open-std.org%2Fjtc1%2Fsc22%2Fwg14%2Fwww%2Fdocs%2Fn2353.htm&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AC23+%28C+standard+revision%29" class="Z3988"></span></span> </li> <li id="cite_note-N2974-10"><span class="mw-cite-backlink"><b><a href="#cite_ref-N2974_10-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2974.pdf">"WG14-N2974: Queryable pointer alignment"</a> <span class="cs1-format">(PDF)</span>. <i>open-std.org</i>. 2022-04-15. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20221013182240/https://www.open-std.org/jtc1/sc22/WG14/www/docs/n2974.pdf">Archived</a> <span class="cs1-format">(PDF)</span> from the original on October 13, 2022.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=open-std.org&amp;rft.atitle=WG14-N2974%3A+Queryable+pointer+alignment&amp;rft.date=2022-04-15&amp;rft_id=https%3A%2F%2Fwww.open-std.org%2Fjtc1%2Fsc22%2Fwg14%2Fwww%2Fdocs%2Fn2974.pdf&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AC23+%28C+standard+revision%29" class="Z3988"></span></span> </li> <li id="cite_note-N3022-11"><span class="mw-cite-backlink">^ <a href="#cite_ref-N3022_11-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-N3022_11-1"><sup><i><b>b</b></i></sup></a> <a href="#cite_ref-N3022_11-2"><sup><i><b>c</b></i></sup></a> <a href="#cite_ref-N3022_11-3"><sup><i><b>d</b></i></sup></a> <a href="#cite_ref-N3022_11-4"><sup><i><b>e</b></i></sup></a> <a href="#cite_ref-N3022_11-5"><sup><i><b>f</b></i></sup></a> <a href="#cite_ref-N3022_11-6"><sup><i><b>g</b></i></sup></a> <a href="#cite_ref-N3022_11-7"><sup><i><b>h</b></i></sup></a> <a href="#cite_ref-N3022_11-8"><sup><i><b>i</b></i></sup></a> <a href="#cite_ref-N3022_11-9"><sup><i><b>j</b></i></sup></a> <a href="#cite_ref-N3022_11-10"><sup><i><b>k</b></i></sup></a></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n3022.htm">"WG14-N3022: Modern Bit Utilities"</a>. <i>open-std.org</i>. 2022-07-06. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20221224194734/https://www.open-std.org/jtc1/sc22/wg14/www/docs/n3022.htm">Archived</a> from the original on December 24, 2022.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=open-std.org&amp;rft.atitle=WG14-N3022%3A+Modern+Bit+Utilities&amp;rft.date=2022-07-06&amp;rft_id=https%3A%2F%2Fwww.open-std.org%2Fjtc1%2Fsc22%2Fwg14%2Fwww%2Fdocs%2Fn3022.htm&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AC23+%28C+standard+revision%29" class="Z3988"></span></span> </li> <li id="cite_note-N2833-12"><span class="mw-cite-backlink"><b><a href="#cite_ref-N2833_12-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2833.htm">"WG14-N2833: Add timegm() as non-optional part of time.h"</a>. <i>open-std.org</i>. 2021-10-07. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20211201062452/https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2833.htm">Archived</a> from the original on December 1, 2021.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=open-std.org&amp;rft.atitle=WG14-N2833%3A+Add+timegm%28%29+as+non-optional+part+of+time.h&amp;rft.date=2021-10-07&amp;rft_id=https%3A%2F%2Fwww.open-std.org%2Fjtc1%2Fsc22%2Fwg14%2Fwww%2Fdocs%2Fn2833.htm&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AC23+%28C+standard+revision%29" class="Z3988"></span></span> </li> <li id="cite_note-13"><span class="mw-cite-backlink"><b><a href="#cite_ref-13">^</a></b></span> <span class="reference-text">See N3096 § B.11 for a useful overview. The functions were added in separate documents: N2488, its updated versions, and its refs.</span> </li> <li id="cite_note-N2630-14"><span class="mw-cite-backlink">^ <a href="#cite_ref-N2630_14-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-N2630_14-1"><sup><i><b>b</b></i></sup></a> <a href="#cite_ref-N2630_14-2"><sup><i><b>c</b></i></sup></a></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2630.pdf">"WG14-N2630: formatted input/output of binary integer numbers"</a> <span class="cs1-format">(PDF)</span>. <i>open-std.org</i>. 2021-01-01. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20221214154315/https://open-std.org/JTC1/SC22/WG14/www/docs/n2630.pdf">Archived</a> <span class="cs1-format">(PDF)</span> from the original on December 14, 2022.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=open-std.org&amp;rft.atitle=WG14-N2630%3A+formatted+input%2Foutput+of+binary+integer+numbers&amp;rft.date=2021-01-01&amp;rft_id=https%3A%2F%2Fwww.open-std.org%2Fjtc1%2Fsc22%2Fwg14%2Fwww%2Fdocs%2Fn2630.pdf&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AC23+%28C+standard+revision%29" class="Z3988"></span></span> </li> <li id="cite_note-N3020-15"><span class="mw-cite-backlink"><b><a href="#cite_ref-N3020_15-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n3020.pdf">"WG14-N3020: Qualifier-preserving standard library functions"</a> <span class="cs1-format">(PDF)</span>. <i>open-std.org</i>. 2022-06-13. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20221013190826/https://www.open-std.org/jtc1/sc22/WG14/www/docs/n3020.pdf">Archived</a> <span class="cs1-format">(PDF)</span> from the original on October 13, 2022.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=open-std.org&amp;rft.atitle=WG14-N3020%3A+Qualifier-preserving+standard+library+functions&amp;rft.date=2022-06-13&amp;rft_id=https%3A%2F%2Fwww.open-std.org%2Fjtc1%2Fsc22%2Fwg14%2Fwww%2Fdocs%2Fn3020.pdf&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AC23+%28C+standard+revision%29" class="Z3988"></span></span> </li> <li id="cite_note-N2645-16"><span class="mw-cite-backlink">^ <a href="#cite_ref-N2645_16-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-N2645_16-1"><sup><i><b>b</b></i></sup></a></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2645.pdf">"WG14-N2645: Add support for preprocessing directives #elifdef and #elifndef"</a> <span class="cs1-format">(PDF)</span>. <i>open-std.org</i>. 2020-01-25. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20221128133337/https://open-std.org/JTC1/SC22/WG14/www/docs/n2645.pdf">Archived</a> <span class="cs1-format">(PDF)</span> from the original on November 28, 2022.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=open-std.org&amp;rft.atitle=WG14-N2645%3A+Add+support+for+preprocessing+directives+%23elifdef+and+%23elifndef&amp;rft.date=2020-01-25&amp;rft_id=https%3A%2F%2Fwww.open-std.org%2Fjtc1%2Fsc22%2Fwg14%2Fwww%2Fdocs%2Fn2645.pdf&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AC23+%28C+standard+revision%29" class="Z3988"></span></span> </li> <li id="cite_note-17"><span class="mw-cite-backlink"><b><a href="#cite_ref-17">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.phoronix.com/news/GCC-12-elifdef-elifndef">"GCC 12 Adds Support For New #elifdef #elifndef Directives"</a>. <i>phoronix</i>. May 12, 2021. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20221227050002/https://www.phoronix.com/news/GCC-12-elifdef-elifndef">Archived</a> from the original on December 27, 2022.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=phoronix&amp;rft.atitle=GCC+12+Adds+Support+For+New+%23elifdef+%23elifndef+Directives&amp;rft.date=2021-05-12&amp;rft_id=https%3A%2F%2Fwww.phoronix.com%2Fnews%2FGCC-12-elifdef-elifndef&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AC23+%28C+standard+revision%29" class="Z3988"></span></span> </li> <li id="cite_note-N3017-18"><span class="mw-cite-backlink"><b><a href="#cite_ref-N3017_18-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n3017.htm">"WG14-N3017: #embed - a scannable, tooling-friendly binary resource inclusion mechanism"</a>. <i>open-std.org</i>. 2022-06-27. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20221224045304/https://www.open-std.org/jtc1/sc22/wg14/www/docs/n3017.htm">Archived</a> from the original on December 24, 2022.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=open-std.org&amp;rft.atitle=WG14-N3017%3A+%23embed+-+a+scannable%2C+tooling-friendly+binary+resource+inclusion+mechanism&amp;rft.date=2022-06-27&amp;rft_id=https%3A%2F%2Fwww.open-std.org%2Fjtc1%2Fsc22%2Fwg14%2Fwww%2Fdocs%2Fn3017.htm&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AC23+%28C+standard+revision%29" class="Z3988"></span></span> </li> <li id="cite_note-N2686-19"><span class="mw-cite-backlink"><b><a href="#cite_ref-N2686_19-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2686.pdf">"WG14-N2686: #warning"</a> <span class="cs1-format">(PDF)</span>. <i>open-std.org</i>. 2022-07-22. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20221128133337/https://open-std.org/JTC1/SC22/WG14/www/docs/n2686.pdf">Archived</a> <span class="cs1-format">(PDF)</span> from the original on November 28, 2022.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=open-std.org&amp;rft.atitle=WG14-N2686%3A+%23warning&amp;rft.date=2022-07-22&amp;rft_id=https%3A%2F%2Fwww.open-std.org%2Fjtc1%2Fsc22%2Fwg14%2Fwww%2Fdocs%2Fn2686.pdf&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AC23+%28C+standard+revision%29" class="Z3988"></span></span> </li> <li id="cite_note-N2799-20"><span class="mw-cite-backlink"><b><a href="#cite_ref-N2799_20-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2799.pdf">"WG14-N2799: __has_include for C"</a> <span class="cs1-format">(PDF)</span>. <i>open-std.org</i>. 2021-08-30. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20221224103617/https://open-std.org/JTC1/SC22/WG14/www/docs/n2799.pdf">Archived</a> <span class="cs1-format">(PDF)</span> from the original on December 24, 2022.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=open-std.org&amp;rft.atitle=WG14-N2799%3A+&#95;_has_include+for+C&amp;rft.date=2021-08-30&amp;rft_id=https%3A%2F%2Fwww.open-std.org%2Fjtc1%2Fsc22%2Fwg14%2Fwww%2Fdocs%2Fn2799.pdf&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AC23+%28C+standard+revision%29" class="Z3988"></span></span> </li> <li id="cite_note-N2553-21"><span class="mw-cite-backlink"><b><a href="#cite_ref-N2553_21-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2553.pdf">"WG14-N2553: Querying attribute support"</a> <span class="cs1-format">(PDF)</span>. <i>open-std.org</i>. 2020-08-04. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20221014221314/https://open-std.org/JTC1/SC22/WG14/www/docs/n2553.pdf">Archived</a> <span class="cs1-format">(PDF)</span> from the original on October 14, 2022.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=open-std.org&amp;rft.atitle=WG14-N2553%3A+Querying+attribute+support&amp;rft.date=2020-08-04&amp;rft_id=https%3A%2F%2Fwww.open-std.org%2Fjtc1%2Fsc22%2Fwg14%2Fwww%2Fdocs%2Fn2553.pdf&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AC23+%28C+standard+revision%29" class="Z3988"></span></span> </li> <li id="cite_note-N3033-22"><span class="mw-cite-backlink"><b><a href="#cite_ref-N3033_22-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n3033.htm">"WG14-N3033: Comma omission and comma deletion"</a>. <i>open-std.org</i>. 2022-07-20. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20221227031727/https://www.open-std.org/jtc1/sc22/wg14/www/docs/n3033.htm">Archived</a> from the original on December 27, 2022.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=open-std.org&amp;rft.atitle=WG14-N3033%3A+Comma+omission+and+comma+deletion&amp;rft.date=2022-07-20&amp;rft_id=https%3A%2F%2Fwww.open-std.org%2Fjtc1%2Fsc22%2Fwg14%2Fwww%2Fdocs%2Fn3033.htm&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AC23+%28C+standard+revision%29" class="Z3988"></span></span> </li> <li id="cite_note-N3042-23"><span class="mw-cite-backlink">^ <a href="#cite_ref-N3042_23-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-N3042_23-1"><sup><i><b>b</b></i></sup></a></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://open-std.org/JTC1/SC22/WG14/www/docs/n3042.htm">"WR14-N3042: Introduce the nullptr constant"</a>. <i>open-std.org</i>. 2022-07-22. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20221224043228/https://open-std.org/JTC1/SC22/WG14/www/docs/n3042.htm">Archived</a> from the original on December 24, 2022.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=open-std.org&amp;rft.atitle=WR14-N3042%3A+Introduce+the+nullptr+constant&amp;rft.date=2022-07-22&amp;rft_id=https%3A%2F%2Fopen-std.org%2FJTC1%2FSC22%2FWG14%2Fwww%2Fdocs%2Fn3042.htm&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AC23+%28C+standard+revision%29" class="Z3988"></span></span> </li> <li id="cite_note-N2763-24"><span class="mw-cite-backlink"><b><a href="#cite_ref-N2763_24-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2763.pdf">"WG14-N2763: Adding a Fundamental Type for N-bit integers"</a> <span class="cs1-format">(PDF)</span>. <i>open-std.org</i>. 2021-06-21. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20221227055250/https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2763.pdf">Archived</a> <span class="cs1-format">(PDF)</span> from the original on December 27, 2022.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=open-std.org&amp;rft.atitle=WG14-N2763%3A+Adding+a+Fundamental+Type+for+N-bit+integers&amp;rft.date=2021-06-21&amp;rft_id=https%3A%2F%2Fwww.open-std.org%2Fjtc1%2Fsc22%2Fwg14%2Fwww%2Fdocs%2Fn2763.pdf&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AC23+%28C+standard+revision%29" class="Z3988"></span></span> </li> <li id="cite_note-N3035-25"><span class="mw-cite-backlink"><b><a href="#cite_ref-N3035_25-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n3035.pdf">"WG14-N3035: _BitInt Fixes"</a> <span class="cs1-format">(PDF)</span>. <i>open-std.org</i>. 2022-07-21. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20221013182206/https://www.open-std.org/jtc1/sc22/WG14/www/docs/n3035.pdf">Archived</a> <span class="cs1-format">(PDF)</span> from the original on October 13, 2022.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=open-std.org&amp;rft.atitle=WG14-N3035%3A+_BitInt+Fixes&amp;rft.date=2022-07-21&amp;rft_id=https%3A%2F%2Fwww.open-std.org%2Fjtc1%2Fsc22%2Fwg14%2Fwww%2Fdocs%2Fn3035.pdf&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AC23+%28C+standard+revision%29" class="Z3988"></span></span> </li> <li id="cite_note-N2867-26"><span class="mw-cite-backlink"><b><a href="#cite_ref-N2867_26-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2867.pdf">"WG14-N2867: Checked N-Bit Integers"</a> <span class="cs1-format">(PDF)</span>. <i>open-std.org</i>. 2021-11-28. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20221214154907/https://open-std.org/JTC1/SC22/WG14/www/docs/n2867.pdf">Archived</a> <span class="cs1-format">(PDF)</span> from the original on December 14, 2022.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=open-std.org&amp;rft.atitle=WG14-N2867%3A+Checked+N-Bit+Integers&amp;rft.date=2021-11-28&amp;rft_id=https%3A%2F%2Fwww.open-std.org%2Fjtc1%2Fsc22%2Fwg14%2Fwww%2Fdocs%2Fn2867.pdf&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AC23+%28C+standard+revision%29" class="Z3988"></span></span> </li> <li id="cite_note-N2778-27"><span class="mw-cite-backlink"><b><a href="#cite_ref-N2778_27-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2778.pdf">"WG14-N2778: Variably-Modified Types"</a> <span class="cs1-format">(PDF)</span>. <i>open-std.org</i>. 2021-07-11. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20221222053411/https://open-std.org/jtc1/sc22/wg14/www/docs/n2778.pdf">Archived</a> <span class="cs1-format">(PDF)</span> from the original on December 22, 2022.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=open-std.org&amp;rft.atitle=WG14-N2778%3A+Variably-Modified+Types&amp;rft.date=2021-07-11&amp;rft_id=https%3A%2F%2Fwww.open-std.org%2Fjtc1%2Fsc22%2Fwg14%2Fwww%2Fdocs%2Fn2778.pdf&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AC23+%28C+standard+revision%29" class="Z3988"></span></span> </li> <li id="cite_note-N2607-28"><span class="mw-cite-backlink"><b><a href="#cite_ref-N2607_28-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2607.pdf">"WG14-N2607: Compatibility of Pointers to Arrays with Qualifiers"</a> <span class="cs1-format">(PDF)</span>. <i>open-std.org</i>. 2020-10-31. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20221013182946/https://www.open-std.org/jtc1/sc22/WG14/www/docs/n2607.pdf">Archived</a> <span class="cs1-format">(PDF)</span> from the original on October 13, 2022.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=open-std.org&amp;rft.atitle=WG14-N2607%3A+Compatibility+of+Pointers+to+Arrays+with+Qualifiers&amp;rft.date=2020-10-31&amp;rft_id=https%3A%2F%2Fwww.open-std.org%2Fjtc1%2Fsc22%2Fwg14%2Fwww%2Fdocs%2Fn2607.pdf&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AC23+%28C+standard+revision%29" class="Z3988"></span></span> </li> <li id="cite_note-N2899-29"><span class="mw-cite-backlink"><b><a href="#cite_ref-N2899_29-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2899.htm">"WG14-N2899: Not-so-magic - typeof for C"</a>. <i>open-std.org</i>. 2022-01-21. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20221224044528/https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2899.htm">Archived</a> from the original on December 24, 2022.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=open-std.org&amp;rft.atitle=WG14-N2899%3A+Not-so-magic+-+typeof+for+C&amp;rft.date=2022-01-21&amp;rft_id=https%3A%2F%2Fwww.open-std.org%2Fjtc1%2Fsc22%2Fwg14%2Fwww%2Fdocs%2Fn2899.htm&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AC23+%28C+standard+revision%29" class="Z3988"></span></span> </li> <li id="cite_note-N3007-30"><span class="mw-cite-backlink"><b><a href="#cite_ref-N3007_30-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n3007.htm">"WG14-N3007: Type inference for object definitions"</a>. <i>open-std.org</i>. 2022-06-10. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20221224105654/https://open-std.org/JTC1/SC22/WG14/www/docs/n3007.htm">Archived</a> from the original on December 24, 2022.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=open-std.org&amp;rft.atitle=WG14-N3007%3A+Type+inference+for+object+definitions&amp;rft.date=2022-06-10&amp;rft_id=https%3A%2F%2Fwww.open-std.org%2Fjtc1%2Fsc22%2Fwg14%2Fwww%2Fdocs%2Fn3007.htm&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AC23+%28C+standard+revision%29" class="Z3988"></span></span> </li> <li id="cite_note-N3037-31"><span class="mw-cite-backlink"><b><a href="#cite_ref-N3037_31-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n3037.pdf">"WG14-N3037: Improved Rules for Tag Compatibility (updates N3032)"</a> <span class="cs1-format">(PDF)</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=unknown&amp;rft.btitle=WG14-N3037%3A+Improved+Rules+for+Tag+Compatibility+%28updates+N3032%29&amp;rft_id=https%3A%2F%2Fwww.open-std.org%2Fjtc1%2Fsc22%2Fwg14%2Fwww%2Fdocs%2Fn3037.pdf&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AC23+%28C+standard+revision%29" class="Z3988"></span></span> </li> <li id="cite_note-shep2207-32"><span class="mw-cite-backlink"><b><a href="#cite_ref-shep2207_32-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://thephd.dev/c23-is-coming-here-is-what-is-on-the-menu">"C23 is Finished: Here is What is on the Menu"</a>. <i>The Pasture</i>. 31 July 2022.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=The+Pasture&amp;rft.atitle=C23+is+Finished%3A+Here+is+What+is+on+the+Menu&amp;rft.date=2022-07-31&amp;rft_id=https%3A%2F%2Fthephd.dev%2Fc23-is-coming-here-is-what-is-on-the-menu&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AC23+%28C+standard+revision%29" class="Z3988"></span></span> </li> <li id="cite_note-N2775-33"><span class="mw-cite-backlink"><b><a href="#cite_ref-N2775_33-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2775.pdf">"WG14-N2775: Literal suffixes for bit-precise integers"</a> <span class="cs1-format">(PDF)</span>. <i>open-std.org</i>. 2021-07-13. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20221227014728/https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2775.pdf">Archived</a> <span class="cs1-format">(PDF)</span> from the original on December 27, 2022.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=open-std.org&amp;rft.atitle=WG14-N2775%3A+Literal+suffixes+for+bit-precise+integers&amp;rft.date=2021-07-13&amp;rft_id=https%3A%2F%2Fwww.open-std.org%2Fjtc1%2Fsc22%2Fwg14%2Fwww%2Fdocs%2Fn2775.pdf&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AC23+%28C+standard+revision%29" class="Z3988"></span></span> </li> <li id="cite_note-N2549-34"><span class="mw-cite-backlink"><b><a href="#cite_ref-N2549_34-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2549.pdf">"WG14-N2549: Allow for binary integer constants"</a> <span class="cs1-format">(PDF)</span>. <i>open-std.org</i>. 2020-07-30. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20221222192818/https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2549.pdf">Archived</a> <span class="cs1-format">(PDF)</span> from the original on December 22, 2022.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=open-std.org&amp;rft.atitle=WG14-N2549%3A+Allow+for+binary+integer+constants&amp;rft.date=2020-07-30&amp;rft_id=https%3A%2F%2Fwww.open-std.org%2Fjtc1%2Fsc22%2Fwg14%2Fwww%2Fdocs%2Fn2549.pdf&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AC23+%28C+standard+revision%29" class="Z3988"></span></span> </li> <li id="cite_note-N2626-35"><span class="mw-cite-backlink"><b><a href="#cite_ref-N2626_35-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2626.pdf">"WG14-N2626: Digit separators"</a> <span class="cs1-format">(PDF)</span>. <i>open-std.org</i>. 2020-12-15. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20221219215425/https://open-std.org/JTC1/SC22/WG14/www/docs/n2626.pdf">Archived</a> <span class="cs1-format">(PDF)</span> from the original on December 19, 2022.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=open-std.org&amp;rft.atitle=WG14-N2626%3A+Digit+separators&amp;rft.date=2020-12-15&amp;rft_id=https%3A%2F%2Fwww.open-std.org%2Fjtc1%2Fsc22%2Fwg14%2Fwww%2Fdocs%2Fn2626.pdf&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AC23+%28C+standard+revision%29" class="Z3988"></span></span> </li> <li id="cite_note-N3030-36"><span class="mw-cite-backlink"><b><a href="#cite_ref-N3030_36-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://open-std.org/JTC1/SC22/WG14/www/docs/n3030.htm">"WG14-N3030: Enhancements to Enumerations"</a>. <i>open-std.org</i>. 2022-07-19. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20221126132709/https://open-std.org/JTC1/SC22/WG14/www/docs/n3030.htm">Archived</a> from the original on November 26, 2022.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=open-std.org&amp;rft.atitle=WG14-N3030%3A+Enhancements+to+Enumerations&amp;rft.date=2022-07-19&amp;rft_id=https%3A%2F%2Fopen-std.org%2FJTC1%2FSC22%2FWG14%2Fwww%2Fdocs%2Fn3030.htm&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AC23+%28C+standard+revision%29" class="Z3988"></span></span> </li> <li id="cite_note-N3029-37"><span class="mw-cite-backlink"><b><a href="#cite_ref-N3029_37-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://open-std.org/JTC1/SC22/WG14/www/docs/n3029.htm">"WG14-N3029: Improved Normal Enumerations"</a>. <i>open-std.org</i>. 2022-07-19. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20230129180341/https://open-std.org/JTC1/SC22/WG14/www/docs/n3029.htm">Archived</a> from the original on January 29, 2023.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=open-std.org&amp;rft.atitle=WG14-N3029%3A+Improved+Normal+Enumerations&amp;rft.date=2022-07-19&amp;rft_id=https%3A%2F%2Fopen-std.org%2FJTC1%2FSC22%2FWG14%2Fwww%2Fdocs%2Fn3029.htm&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AC23+%28C+standard+revision%29" class="Z3988"></span></span> </li> <li id="cite_note-N2935-38"><span class="mw-cite-backlink"><b><a href="#cite_ref-N2935_38-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2935.pdf">"WG14-N2935: Make false and true first-class language features"</a> <span class="cs1-format">(PDF)</span>. <i>open-std.org</i>. 2022-02-15. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20221121123457/https://open-std.org/JTC1/SC22/WG14/www/docs/n2935.pdf">Archived</a> <span class="cs1-format">(PDF)</span> from the original on November 21, 2022.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=open-std.org&amp;rft.atitle=WG14-N2935%3A+Make+false+and+true+first-class+language+features&amp;rft.date=2022-02-15&amp;rft_id=https%3A%2F%2Fwww.open-std.org%2Fjtc1%2Fsc22%2Fwg14%2Fwww%2Fdocs%2Fn2935.pdf&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AC23+%28C+standard+revision%29" class="Z3988"></span></span> </li> <li id="cite_note-N2934-39"><span class="mw-cite-backlink"><b><a href="#cite_ref-N2934_39-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2934.pdf">"WG14-N2934: Revise spelling of keywords"</a> <span class="cs1-format">(PDF)</span>. <i>open-std.org</i>. 2022-02-15. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20221224132455/https://open-std.org/JTC1/SC22/WG14/www/docs/n2934.pdf">Archived</a> <span class="cs1-format">(PDF)</span> from the original on December 24, 2022.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=open-std.org&amp;rft.atitle=WG14-N2934%3A+Revise+spelling+of+keywords&amp;rft.date=2022-02-15&amp;rft_id=https%3A%2F%2Fwww.open-std.org%2Fjtc1%2Fsc22%2Fwg14%2Fwww%2Fdocs%2Fn2934.pdf&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AC23+%28C+standard+revision%29" class="Z3988"></span></span> </li> <li id="cite_note-N2508-40"><span class="mw-cite-backlink"><b><a href="#cite_ref-N2508_40-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2508.pdf">"WG14-N2508: Free Positioning of Labels Inside Compound Statements"</a> <span class="cs1-format">(PDF)</span>. <i>open-std.org</i>. 2020-03-28. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20221227183107/https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2508.pdf">Archived</a> <span class="cs1-format">(PDF)</span> from the original on December 27, 2022.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=open-std.org&amp;rft.atitle=WG14-N2508%3A+Free+Positioning+of+Labels+Inside+Compound+Statements&amp;rft.date=2020-03-28&amp;rft_id=https%3A%2F%2Fwww.open-std.org%2Fjtc1%2Fsc22%2Fwg14%2Fwww%2Fdocs%2Fn2508.pdf&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AC23+%28C+standard+revision%29" class="Z3988"></span></span> </li> <li id="cite_note-N2510-41"><span class="mw-cite-backlink"><b><a href="#cite_ref-N2510_41-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2510.pdf">"WG14-N2510: Allowing unnamed parameters in a function definition"</a> <span class="cs1-format">(PDF)</span>. <i>open-std.org</i>. 2020-04-09. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20221224075948/https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2510.pdf">Archived</a> <span class="cs1-format">(PDF)</span> from the original on December 24, 2022.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=open-std.org&amp;rft.atitle=WG14-N2510%3A+Allowing+unnamed+parameters+in+a+function+definition&amp;rft.date=2020-04-09&amp;rft_id=https%3A%2F%2Fwww.open-std.org%2Fjtc1%2Fsc22%2Fwg14%2Fwww%2Fdocs%2Fn2510.pdf&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AC23+%28C+standard+revision%29" class="Z3988"></span></span> </li> <li id="cite_note-N2900-42"><span class="mw-cite-backlink"><b><a href="#cite_ref-N2900_42-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2900.htm">"WG14-N2900: Consistent, Warningless, and Intuitive Initialization with {}"</a>. <i>open-std.org</i>. 2022-01-01. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20221227181452/https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2900.htm">Archived</a> from the original on December 27, 2022.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=open-std.org&amp;rft.atitle=WG14-N2900%3A+Consistent%2C+Warningless%2C+and+Intuitive+Initialization+with+%7B%7D&amp;rft.date=2022-01-01&amp;rft_id=https%3A%2F%2Fwww.open-std.org%2Fjtc1%2Fsc22%2Fwg14%2Fwww%2Fdocs%2Fn2900.htm&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AC23+%28C+standard+revision%29" class="Z3988"></span></span> </li> <li id="cite_note-N2975-43"><span class="mw-cite-backlink"><b><a href="#cite_ref-N2975_43-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2975.pdf">"WG14-N2975: Relax requirements for variadic parameter lists"</a> <span class="cs1-format">(PDF)</span>. <i>open-std.org</i>. 2022-04-15. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20221128133337/https://open-std.org/JTC1/SC22/WG14/www/docs/n2975.pdf">Archived</a> <span class="cs1-format">(PDF)</span> from the original on November 28, 2022.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=open-std.org&amp;rft.atitle=WG14-N2975%3A+Relax+requirements+for+variadic+parameter+lists&amp;rft.date=2022-04-15&amp;rft_id=https%3A%2F%2Fwww.open-std.org%2Fjtc1%2Fsc22%2Fwg14%2Fwww%2Fdocs%2Fn2975.pdf&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AC23+%28C+standard+revision%29" class="Z3988"></span></span> </li> <li id="cite_note-N2335-44"><span class="mw-cite-backlink"><b><a href="#cite_ref-N2335_44-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2335.pdf">"WG14-N2335: Attributes in C"</a> <span class="cs1-format">(PDF)</span>. <i>open-std.org</i>. 2019-03-09. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20221026060722/https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2335.pdf">Archived</a> <span class="cs1-format">(PDF)</span> from the original on October 26, 2022.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=open-std.org&amp;rft.atitle=WG14-N2335%3A+Attributes+in+C&amp;rft.date=2019-03-09&amp;rft_id=https%3A%2F%2Fwww.open-std.org%2Fjtc1%2Fsc22%2Fwg14%2Fwww%2Fdocs%2Fn2335.pdf&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AC23+%28C+standard+revision%29" class="Z3988"></span></span> </li> <li id="cite_note-:0-45"><span class="mw-cite-backlink">^ <a href="#cite_ref-:0_45-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-:0_45-1"><sup><i><b>b</b></i></sup></a></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://open-std.org/JTC1/SC22/WG14/www/docs/n2956.htm">"Unsequenced functions"</a>. <i>open-std.org</i><span class="reference-accessdate">. Retrieved <span class="nowrap">2024-07-18</span></span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=open-std.org&amp;rft.atitle=Unsequenced+functions&amp;rft_id=https%3A%2F%2Fopen-std.org%2FJTC1%2FSC22%2FWG14%2Fwww%2Fdocs%2Fn2956.htm&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AC23+%28C+standard+revision%29" class="Z3988"></span></span> </li> <li id="cite_note-N2265-46"><span class="mw-cite-backlink"><b><a href="#cite_ref-N2265_46-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://open-std.org/JTC1/SC22/WG14/www/docs/n2265.pdf">"WG14-N2265: Harmonizing static_assert with C++"</a> <span class="cs1-format">(PDF)</span>. <i>open-std.org</i>. 2018-07-06. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20230328064918/https://open-std.org/JTC1/SC22/WG14/www/docs/n2265.pdf">Archived</a> <span class="cs1-format">(PDF)</span> from the original on March 28, 2023.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=open-std.org&amp;rft.atitle=WG14-N2265%3A+Harmonizing+static_assert+with+C%2B%2B&amp;rft.date=2018-07-06&amp;rft_id=https%3A%2F%2Fopen-std.org%2FJTC1%2FSC22%2FWG14%2Fwww%2Fdocs%2Fn2265.pdf&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AC23+%28C+standard+revision%29" class="Z3988"></span></span> </li> <li id="cite_note-47"><span class="mw-cite-backlink"><b><a href="#cite_ref-47">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2022/p2324r2.pdf">"Labels at the end of compound statements (C compatibility)"</a> <span class="cs1-format">(PDF)</span>. 2022-01-13.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=unknown&amp;rft.btitle=Labels+at+the+end+of+compound+statements+%28C+compatibility%29&amp;rft.date=2022-01-13&amp;rft_id=https%3A%2F%2Fwww.open-std.org%2Fjtc1%2Fsc22%2Fwg21%2Fdocs%2Fpapers%2F2022%2Fp2324r2.pdf&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AC23+%28C+standard+revision%29" class="Z3988"></span></span> </li> <li id="cite_note-N2554-48"><span class="mw-cite-backlink"><b><a href="#cite_ref-N2554_48-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2554.pdf">"WG14-N2554: Minor attribute wording cleanups"</a> <span class="cs1-format">(PDF)</span>. <i>open-std.org</i>. 2020-08-04. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20221128133337/https://open-std.org/JTC1/SC22/WG14/www/docs/n2554.pdf">Archived</a> <span class="cs1-format">(PDF)</span> from the original on November 28, 2022.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=open-std.org&amp;rft.atitle=WG14-N2554%3A+Minor+attribute+wording+cleanups&amp;rft.date=2020-08-04&amp;rft_id=https%3A%2F%2Fwww.open-std.org%2Fjtc1%2Fsc22%2Fwg14%2Fwww%2Fdocs%2Fn2554.pdf&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AC23+%28C+standard+revision%29" class="Z3988"></span></span> </li> <li id="cite_note-N2334-49"><span class="mw-cite-backlink"><b><a href="#cite_ref-N2334_49-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2334.pdf">"WG14-N2334: The deprecated attribute"</a> <span class="cs1-format">(PDF)</span>. <i>open-std.org</i>. 2019-01-22. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20221019131835/https://open-std.org/JTC1/SC22/WG14/www/docs/n2334.pdf">Archived</a> <span class="cs1-format">(PDF)</span> from the original on October 19, 2022.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=open-std.org&amp;rft.atitle=WG14-N2334%3A+The+deprecated+attribute&amp;rft.date=2019-01-22&amp;rft_id=https%3A%2F%2Fwww.open-std.org%2Fjtc1%2Fsc22%2Fwg14%2Fwww%2Fdocs%2Fn2334.pdf&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AC23+%28C+standard+revision%29" class="Z3988"></span></span> </li> <li id="cite_note-N2408-50"><span class="mw-cite-backlink"><b><a href="#cite_ref-N2408_50-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2408.pdf">"WG14-N2408: The fallthrough attribute"</a> <span class="cs1-format">(PDF)</span>. <i>open-std.org</i>. 2019-08-11. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20221225070709/https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2408.pdf">Archived</a> <span class="cs1-format">(PDF)</span> from the original on December 25, 2022.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=open-std.org&amp;rft.atitle=WG14-N2408%3A+The+fallthrough+attribute&amp;rft.date=2019-08-11&amp;rft_id=https%3A%2F%2Fwww.open-std.org%2Fjtc1%2Fsc22%2Fwg14%2Fwww%2Fdocs%2Fn2408.pdf&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AC23+%28C+standard+revision%29" class="Z3988"></span></span> </li> <li id="cite_note-N2270-51"><span class="mw-cite-backlink"><b><a href="#cite_ref-N2270_51-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2270.pdf">"WG14-N2270: The maybe_unused attribute"</a> <span class="cs1-format">(PDF)</span>. <i>open-std.org</i>. 2018-07-06. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20221225070836/https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2270.pdf">Archived</a> <span class="cs1-format">(PDF)</span> from the original on December 25, 2022.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=open-std.org&amp;rft.atitle=WG14-N2270%3A+The+maybe_unused+attribute&amp;rft.date=2018-07-06&amp;rft_id=https%3A%2F%2Fwww.open-std.org%2Fjtc1%2Fsc22%2Fwg14%2Fwww%2Fdocs%2Fn2270.pdf&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AC23+%28C+standard+revision%29" class="Z3988"></span></span> </li> <li id="cite_note-N2267-52"><span class="mw-cite-backlink"><b><a href="#cite_ref-N2267_52-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2267.pdf">"WG14-N2267: The nodiscard attribute"</a> <span class="cs1-format">(PDF)</span>. <i>open-std.org</i>. 2018-07-06. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20221019131846/https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2267.pdf">Archived</a> <span class="cs1-format">(PDF)</span> from the original on October 19, 2022.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=open-std.org&amp;rft.atitle=WG14-N2267%3A+The+nodiscard+attribute&amp;rft.date=2018-07-06&amp;rft_id=https%3A%2F%2Fwww.open-std.org%2Fjtc1%2Fsc22%2Fwg14%2Fwww%2Fdocs%2Fn2267.pdf&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AC23+%28C+standard+revision%29" class="Z3988"></span></span> </li> <li id="cite_note-N2764-53"><span class="mw-cite-backlink"><b><a href="#cite_ref-N2764_53-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://open-std.org/JTC1/SC22/WG14/www/docs/n2764.pdf">"WG14-N2764: The noreturn attribute"</a> <span class="cs1-format">(PDF)</span>. <i>open-std.org</i>. 2021-06-21. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20221225063437/https://open-std.org/JTC1/SC22/WG14/www/docs/n2764.pdf">Archived</a> <span class="cs1-format">(PDF)</span> from the original on December 25, 2022.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=open-std.org&amp;rft.atitle=WG14-N2764%3A+The+noreturn+attribute&amp;rft.date=2021-06-21&amp;rft_id=https%3A%2F%2Fopen-std.org%2FJTC1%2FSC22%2FWG14%2Fwww%2Fdocs%2Fn2764.pdf&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AC23+%28C+standard+revision%29" class="Z3988"></span></span> </li> <li id="cite_note-N2557-54"><span class="mw-cite-backlink"><b><a href="#cite_ref-N2557_54-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2557.pdf">"WG14-N2557: Allow Duplicate Attributes"</a> <span class="cs1-format">(PDF)</span>. <i>open-std.org</i>. 2020-09-01. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20221128133337/https://open-std.org/JTC1/SC22/WG14/www/docs/n2557.pdf">Archived</a> <span class="cs1-format">(PDF)</span> from the original on November 28, 2022.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=open-std.org&amp;rft.atitle=WG14-N2557%3A+Allow+Duplicate+Attributes&amp;rft.date=2020-09-01&amp;rft_id=https%3A%2F%2Fwww.open-std.org%2Fjtc1%2Fsc22%2Fwg14%2Fwww%2Fdocs%2Fn2557.pdf&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AC23+%28C+standard+revision%29" class="Z3988"></span></span> </li> <li id="cite_note-N2418-55"><span class="mw-cite-backlink"><b><a href="#cite_ref-N2418_55-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2418.pdf">"WG14-N2418: Adding the u8 character prefix"</a> <span class="cs1-format">(PDF)</span>. <i>open-std.org</i>. 2019-09-02. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20230113210023/https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2418.pdf">Archived</a> <span class="cs1-format">(PDF)</span> from the original on January 13, 2023.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=open-std.org&amp;rft.atitle=WG14-N2418%3A+Adding+the+u8+character+prefix&amp;rft.date=2019-09-02&amp;rft_id=https%3A%2F%2Fwww.open-std.org%2Fjtc1%2Fsc22%2Fwg14%2Fwww%2Fdocs%2Fn2418.pdf&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AC23+%28C+standard+revision%29" class="Z3988"></span></span> </li> <li id="cite_note-56"><span class="mw-cite-backlink"><b><a href="#cite_ref-56">^</a></b></span> <span class="reference-text"><a rel="nofollow" class="external text" href="https://stackoverflow.com/questions/31970111/what-is-the-point-of-the-utf-8-character-literals-proposed-for-c17#31970297">What is the point of the UTF-8 character literals proposed for C++17?; Stack Overflow.</a></span> </li> <li id="cite_note-N2341-57"><span class="mw-cite-backlink"><b><a href="#cite_ref-N2341_57-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2341.pdf">"WG14-N2341: ISO/IEC TS 18661-2 - Floating-point extensions for C - Part 2: Decimal floating-point arithmetic"</a> <span class="cs1-format">(PDF)</span>. <i>open-std.org</i>. February 26, 2019. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20221121122559/https://open-std.org/JTC1/SC22/WG14/www/docs/n2341.pdf">Archived</a> <span class="cs1-format">(PDF)</span> from the original on November 21, 2022.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=open-std.org&amp;rft.atitle=WG14-N2341%3A+ISO%2FIEC+TS+18661-2+-+Floating-point+extensions+for+C+-+Part+2%3A+Decimal+floating-point+arithmetic&amp;rft.date=2019-02-26&amp;rft_id=https%3A%2F%2Fwww.open-std.org%2Fjtc1%2Fsc22%2Fwg14%2Fwww%2Fdocs%2Fn2341.pdf&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AC23+%28C+standard+revision%29" class="Z3988"></span></span> </li> <li id="cite_note-N2601-58"><span class="mw-cite-backlink"><b><a href="#cite_ref-N2601_58-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2601.pdf">"WG14-N2601: Annex X - IEC 60559 interchange and extended types"</a> <span class="cs1-format">(PDF)</span>. <i>open-std.org</i>. October 15, 2020. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20221014221322/https://open-std.org/JTC1/SC22/WG14/www/docs/n2601.pdf">Archived</a> <span class="cs1-format">(PDF)</span> from the original on October 14, 2022.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=open-std.org&amp;rft.atitle=WG14-N2601%3A+Annex+X+-+IEC+60559+interchange+and+extended+types&amp;rft.date=2020-10-15&amp;rft_id=https%3A%2F%2Fwww.open-std.org%2Fjtc1%2Fsc22%2Fwg14%2Fwww%2Fdocs%2Fn2601.pdf&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AC23+%28C+standard+revision%29" class="Z3988"></span></span> </li> <li id="cite_note-N3018-59"><span class="mw-cite-backlink"><b><a href="#cite_ref-N3018_59-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n3018.htm">"WG14-N3018: The constexpr specifier for object definitions"</a>. <i>open-std.org</i>. 2022-07-06. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20221224074302/https://www.open-std.org/jtc1/sc22/wg14/www/docs/n3018.htm">Archived</a> from the original on December 24, 2022.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=open-std.org&amp;rft.atitle=WG14-N3018%3A+The+constexpr+specifier+for+object+definitions&amp;rft.date=2022-07-06&amp;rft_id=https%3A%2F%2Fwww.open-std.org%2Fjtc1%2Fsc22%2Fwg14%2Fwww%2Fdocs%2Fn3018.htm&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AC23+%28C+standard+revision%29" class="Z3988"></span></span> </li> <li id="cite_note-N2653-60"><span class="mw-cite-backlink"><b><a href="#cite_ref-N2653_60-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2653.htm">"WG14-N2653: char8_t: A type for UTF-8 characters and strings (Revision 1)"</a>. <i>open-std.org</i>. 2021-06-04. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20230527110842/https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2653.htm">Archived</a> from the original on May 27, 2023.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=open-std.org&amp;rft.atitle=WG14-N2653%3A+char8_t%3A+A+type+for+UTF-8+characters+and+strings+%28Revision+1%29&amp;rft.date=2021-06-04&amp;rft_id=https%3A%2F%2Fwww.open-std.org%2Fjtc1%2Fsc22%2Fwg14%2Fwww%2Fdocs%2Fn2653.htm&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AC23+%28C+standard+revision%29" class="Z3988"></span></span> </li> <li id="cite_note-N2728-61"><span class="mw-cite-backlink"><b><a href="#cite_ref-N2728_61-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2728.htm">"WG14-N2728: char16_t &amp; char32_t string literals shall be UTF-16 &amp; UTF-32"</a>. <i>open-std.org</i>. 2021-05-15. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20230527110756/https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2728.htm">Archived</a> from the original on May 27, 2023.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=open-std.org&amp;rft.atitle=WG14-N2728%3A+char16_t+%26+char32_t+string+literals+shall+be+UTF-16+%26+UTF-32&amp;rft.date=2021-05-15&amp;rft_id=https%3A%2F%2Fwww.open-std.org%2Fjtc1%2Fsc22%2Fwg14%2Fwww%2Fdocs%2Fn2728.htm&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AC23+%28C+standard+revision%29" class="Z3988"></span></span> </li> <li id="cite_note-N3038-62"><span class="mw-cite-backlink"><b><a href="#cite_ref-N3038_62-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://open-std.org/JTC1/SC22/WG14/www/docs/n3038.htm">"WG14-N3038: Introduce storage-class specifiers for compound literals"</a>. <i>open-std.org</i>. 2022-07-21. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20221126130057/https://open-std.org/JTC1/SC22/WG14/www/docs/n3038.htm">Archived</a> from the original on November 26, 2022.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=open-std.org&amp;rft.atitle=WG14-N3038%3A+Introduce+storage-class+specifiers+for+compound+literals&amp;rft.date=2022-07-21&amp;rft_id=https%3A%2F%2Fopen-std.org%2FJTC1%2FSC22%2FWG14%2Fwww%2Fdocs%2Fn3038.htm&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AC23+%28C+standard+revision%29" class="Z3988"></span></span> </li> <li id="cite_note-N2940-63"><span class="mw-cite-backlink"><b><a href="#cite_ref-N2940_63-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2940.pdf">"WG14-N2940: Removing trigraphs??!"</a> <span class="cs1-format">(PDF)</span>. <i>open-std.org</i>. 2022-03-02. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20221026005747/https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2940.pdf">Archived</a> <span class="cs1-format">(PDF)</span> from the original on October 26, 2022.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=open-std.org&amp;rft.atitle=WG14-N2940%3A+Removing+trigraphs%3F%3F%21&amp;rft.date=2022-03-02&amp;rft_id=https%3A%2F%2Fwww.open-std.org%2Fjtc1%2Fsc22%2Fwg14%2Fwww%2Fdocs%2Fn2940.pdf&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AC23+%28C+standard+revision%29" class="Z3988"></span></span> </li> <li id="cite_note-N2432-64"><span class="mw-cite-backlink"><b><a href="#cite_ref-N2432_64-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2432.pdf">"WG14-N2432: Remove support for function definitions with identifier lists proposal"</a> <span class="cs1-format">(PDF)</span>. <i>open-std.org</i>. September 25, 2019. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20221227012244/https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2432.pdf">Archived</a> <span class="cs1-format">(PDF)</span> from the original on December 27, 2022.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=open-std.org&amp;rft.atitle=WG14-N2432%3A+Remove+support+for+function+definitions+with+identifier+lists+proposal&amp;rft.date=2019-09-25&amp;rft_id=https%3A%2F%2Fwww.open-std.org%2Fjtc1%2Fsc22%2Fwg14%2Fwww%2Fdocs%2Fn2432.pdf&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AC23+%28C+standard+revision%29" class="Z3988"></span></span> </li> <li id="cite_note-N2841-65"><span class="mw-cite-backlink"><b><a href="#cite_ref-N2841_65-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2841.htm">"WG14-N2841: No function declarators without prototypes"</a>. <i>open-std.org</i>. 2021-10-10. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20221112154740/https://www9.open-std.org/jtc1/sc22/wg14/www/docs/n2841.htm">Archived</a> from the original on November 12, 2022.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=open-std.org&amp;rft.atitle=WG14-N2841%3A+No+function+declarators+without+prototypes&amp;rft.date=2021-10-10&amp;rft_id=https%3A%2F%2Fwww.open-std.org%2Fjtc1%2Fsc22%2Fwg14%2Fwww%2Fdocs%2Fn2841.htm&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AC23+%28C+standard+revision%29" class="Z3988"></span></span> </li> <li id="cite_note-N2412-66"><span class="mw-cite-backlink"><b><a href="#cite_ref-N2412_66-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2412.pdf">"WG14-N2412: Two's complement sign representation"</a> <span class="cs1-format">(PDF)</span>. <i>open-std.org</i>. August 11, 2019. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20221227174224/https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2412.pdf">Archived</a> <span class="cs1-format">(PDF)</span> from the original on December 27, 2022.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=open-std.org&amp;rft.atitle=WG14-N2412%3A+Two%27s+complement+sign+representation&amp;rft.date=2019-08-11&amp;rft_id=https%3A%2F%2Fwww.open-std.org%2Fjtc1%2Fsc22%2Fwg14%2Fwww%2Fdocs%2Fn2412.pdf&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AC23+%28C+standard+revision%29" class="Z3988"></span></span> </li> <li id="cite_note-N2993-67"><span class="mw-cite-backlink"><b><a href="#cite_ref-N2993_67-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2993.htm">"WG14-N2993: Make *_HAS_SUBNORM be obsolescent"</a>. <i>open-std.org</i>. 2022-06-06. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20221205194635/https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2993.htm">Archived</a> from the original on December 5, 2022.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=open-std.org&amp;rft.atitle=WG14-N2993%3A+Make+%2A_HAS_SUBNORM+be+obsolescent&amp;rft.date=2022-06-06&amp;rft_id=https%3A%2F%2Fwww.open-std.org%2Fjtc1%2Fsc22%2Fwg14%2Fwww%2Fdocs%2Fn2993.htm&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AC23+%28C+standard+revision%29" class="Z3988"></span></span> </li> <li id="cite_note-68"><span class="mw-cite-backlink"><b><a href="#cite_ref-68">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://gcc.gnu.org/gcc-9/changes.html#c">"GCC 9 Release Notes"</a>. <i>GNU Project</i>. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20221227032646/https://gcc.gnu.org/gcc-9/changes.html">Archived</a> from the original on December 27, 2022.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=GNU+Project&amp;rft.atitle=GCC+9+Release+Notes&amp;rft_id=https%3A%2F%2Fgcc.gnu.org%2Fgcc-9%2Fchanges.html%23c&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AC23+%28C+standard+revision%29" class="Z3988"></span></span> </li> <li id="cite_note-69"><span class="mw-cite-backlink"><b><a href="#cite_ref-69">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://github.com/llvm/llvm-project/commit/d06f3917913d2558b771ccc48d838f8cd8993c01">"Clang 9.0 - add new language mode for C2x"</a>. <i>LLVM Project Repository</i>. May 14, 2019. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20221227032640/https://github.com/llvm/llvm-project/commit/d06f3917913d2558b771ccc48d838f8cd8993c01">Archived</a> from the original on December 27, 2022.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=LLVM+Project+Repository&amp;rft.atitle=Clang+9.0+-+add+new+language+mode+for+C2x&amp;rft.date=2019-05-14&amp;rft_id=https%3A%2F%2Fgithub.com%2Fllvm%2Fllvm-project%2Fcommit%2Fd06f3917913d2558b771ccc48d838f8cd8993c01&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AC23+%28C+standard+revision%29" class="Z3988"></span></span> </li> <li id="cite_note-70"><span class="mw-cite-backlink"><b><a href="#cite_ref-70">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="http://www.smorgasbordet.com/pellesc/changes_1000_1100.htm">"Pelles C - major changes between 10.00 and 11.00"</a>. <i>smorgasbordet.com</i>. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20221227032644/http://www.smorgasbordet.com/pellesc/changes_1000_1100.htm">Archived</a> from the original on December 27, 2022.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=smorgasbordet.com&amp;rft.atitle=Pelles+C+-+major+changes+between+10.00+and+11.00&amp;rft_id=http%3A%2F%2Fwww.smorgasbordet.com%2Fpellesc%2Fchanges_1000_1100.htm&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AC23+%28C+standard+revision%29" class="Z3988"></span></span> </li> <li id="cite_note-N3150-71"><span class="mw-cite-backlink">^ <a href="#cite_ref-N3150_71-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-N3150_71-1"><sup><i><b>b</b></i></sup></a> <a href="#cite_ref-N3150_71-2"><sup><i><b>c</b></i></sup></a></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n3150.htm">"N3150 - Editor's Report, Post January-February 2023 Meeting"</a>. <i>open-std.org</i>. 2023-07-08.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=open-std.org&amp;rft.atitle=N3150+-+Editor%27s+Report%2C+Post+January-February+2023+Meeting&amp;rft.date=2023-07-08&amp;rft_id=https%3A%2F%2Fwww.open-std.org%2Fjtc1%2Fsc22%2Fwg14%2Fwww%2Fdocs%2Fn3150.htm&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AC23+%28C+standard+revision%29" class="Z3988"></span></span> </li> <li id="cite_note-N3221-72"><span class="mw-cite-backlink">^ <a href="#cite_ref-N3221_72-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-N3221_72-1"><sup><i><b>b</b></i></sup></a> <a href="#cite_ref-N3221_72-2"><sup><i><b>c</b></i></sup></a> <a href="#cite_ref-N3221_72-3"><sup><i><b>d</b></i></sup></a></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n3221.htm">"N3221 - Editor's Report, Post January 2024 Meeting"</a>. <i>open-std.org</i>. 2024-02-15.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=open-std.org&amp;rft.atitle=N3221+-+Editor%27s+Report%2C+Post+January+2024+Meeting&amp;rft.date=2024-02-15&amp;rft_id=https%3A%2F%2Fwww.open-std.org%2Fjtc1%2Fsc22%2Fwg14%2Fwww%2Fdocs%2Fn3221.htm&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AC23+%28C+standard+revision%29" class="Z3988"></span></span> </li> </ol></div></div> <div class="mw-heading mw-heading2"><h2 id="Further_reading">Further reading</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C23_(C_standard_revision)&amp;action=edit&amp;section=17" title="Edit section: Further reading"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <ul><li><a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n3096.pdf">N3096</a> (last freely-available working draft before C23); WG14; April 2023. <i>(free download)</i></li> <li>N3149 (working draft of C23 standard); WG14; July 2023. <i>(not available to public)</i></li> <li>N3219 (<a rel="nofollow" class="external text" href="https://www.iso.org/standard/82075.html">ISO/IEC 9899:2023 DIS Draft</a>); WG14; February 2024. <i>(ISO draft available but not free)</i></li> <li>ISO/IEC 9899:2024 (official C23 standard); <a href="/wiki/International_Organization_for_Standardization" title="International Organization for Standardization">ISO</a>; 2024. <i>(planning for release in 2024)</i></li> <li><a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n3220.pdf">N3220</a> (first working draft after C23; differs from draft standard N3219 only in one footnote<sup id="cite_ref-N3221_73-0" class="reference"><a href="#cite_note-N3221-73"><span class="cite-bracket">&#91;</span>1<span class="cite-bracket">&#93;</span></a></sup>); WG14; February 2024. <i>(free download)</i></li></ul> <div class="mw-heading mw-heading2"><h2 id="External_links">External links</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=C23_(C_standard_revision)&amp;action=edit&amp;section=18" title="Edit section: External links"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <ul><li><a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg14/">C Language WG14 (Working Group 14)</a></li></ul> <dl><dd><ul><li><a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg14/www/wg14_document_log.htm">WG14 Document Repository</a></li> <li><a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg14/www/meetings">WG14 Meetings</a> - agenda and minutes</li> <li>WG14 Charters: <a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2021.htm">C2x Charter</a>, <a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2611.htm">C23 Charter</a>, <a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2986.htm">Interpreting the C23 Charter</a>, <a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n3223.pdf">C Standard Charter</a></li></ul></dd></dl> <table class="wikitable succession-box noprint" style="margin:0.5em auto; font-size:small;clear:both;"> <tbody><tr style="text-align:center;"> <td style="width:30%;" rowspan="1">Preceded&#160;by<div style="font-weight: bold"><a href="/wiki/C17_(C_standard_revision)" title="C17 (C standard revision)">C17</a></div> </td> <td style="width: 40%; text-align: center;" rowspan="1"><b> <a href="/wiki/C_(programming_language)" title="C (programming language)">C language</a> standards </b> </td> <td style="width: 30%; text-align: center;"><b>Latest </b> </td></tr></tbody></table> <div class="navbox-styles"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1129693374"><style data-mw-deduplicate="TemplateStyles:r1236075235">.mw-parser-output .navbox{box-sizing:border-box;border:1px solid #a2a9b1;width:100%;clear:both;font-size:88%;text-align:center;padding:1px;margin:1em auto 0}.mw-parser-output .navbox .navbox{margin-top:0}.mw-parser-output .navbox+.navbox,.mw-parser-output .navbox+.navbox-styles+.navbox{margin-top:-1px}.mw-parser-output .navbox-inner,.mw-parser-output .navbox-subgroup{width:100%}.mw-parser-output .navbox-group,.mw-parser-output .navbox-title,.mw-parser-output .navbox-abovebelow{padding:0.25em 1em;line-height:1.5em;text-align:center}.mw-parser-output .navbox-group{white-space:nowrap;text-align:right}.mw-parser-output .navbox,.mw-parser-output .navbox-subgroup{background-color:#fdfdfd}.mw-parser-output .navbox-list{line-height:1.5em;border-color:#fdfdfd}.mw-parser-output .navbox-list-with-group{text-align:left;border-left-width:2px;border-left-style:solid}.mw-parser-output tr+tr>.navbox-abovebelow,.mw-parser-output tr+tr>.navbox-group,.mw-parser-output tr+tr>.navbox-image,.mw-parser-output tr+tr>.navbox-list{border-top:2px solid #fdfdfd}.mw-parser-output .navbox-title{background-color:#ccf}.mw-parser-output .navbox-abovebelow,.mw-parser-output .navbox-group,.mw-parser-output .navbox-subgroup .navbox-title{background-color:#ddf}.mw-parser-output .navbox-subgroup .navbox-group,.mw-parser-output .navbox-subgroup .navbox-abovebelow{background-color:#e6e6ff}.mw-parser-output .navbox-even{background-color:#f7f7f7}.mw-parser-output .navbox-odd{background-color:transparent}.mw-parser-output .navbox .hlist td dl,.mw-parser-output .navbox .hlist td ol,.mw-parser-output .navbox .hlist td ul,.mw-parser-output .navbox td.hlist dl,.mw-parser-output .navbox td.hlist ol,.mw-parser-output .navbox td.hlist ul{padding:0.125em 0}.mw-parser-output .navbox .navbar{display:block;font-size:100%}.mw-parser-output .navbox-title .navbar{float:left;text-align:left;margin-right:0.5em}body.skin--responsive .mw-parser-output .navbox-image img{max-width:none!important}@media print{body.ns-0 .mw-parser-output .navbox{display:none!important}}</style></div><div role="navigation" class="navbox" aria-labelledby="C_programming_language" style="padding:3px"><table class="nowraplinks hlist mw-collapsible autocollapse navbox-inner" style="border-spacing:0;background:transparent;color:inherit"><tbody><tr><th scope="col" class="navbox-title" colspan="2"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1129693374"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1239400231"><div class="navbar plainlinks hlist navbar-mini"><ul><li class="nv-view"><a href="/wiki/Template:C_programming_language" title="Template:C programming language"><abbr title="View this template">v</abbr></a></li><li class="nv-talk"><a href="/wiki/Template_talk:C_programming_language" title="Template talk:C programming language"><abbr title="Discuss this template">t</abbr></a></li><li class="nv-edit"><a href="/wiki/Special:EditPage/Template:C_programming_language" title="Special:EditPage/Template:C programming language"><abbr title="Edit this template">e</abbr></a></li></ul></div><div id="C_programming_language" style="font-size:114%;margin:0 4em"><a href="/wiki/C_(programming_language)" title="C (programming language)">C programming language</a></div></th></tr><tr><td class="navbox-abovebelow" colspan="2"><div> <ul><li><a href="/wiki/ANSI_C" title="ANSI C">ANSI C</a></li> <li><a href="/wiki/C99" title="C99">C99</a></li> <li><a href="/wiki/C11_(C_standard_revision)" title="C11 (C standard revision)">C11</a></li> <li><a href="/wiki/C17_(C_standard_revision)" title="C17 (C standard revision)">C17</a></li> <li><a class="mw-selflink selflink">C23</a></li> <li><a href="/wiki/Embedded_C" title="Embedded C">Embedded C</a></li> <li><a href="/wiki/MISRA_C" title="MISRA C">MISRA C</a></li></ul> </div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Features</th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"> <ul><li><a href="/wiki/Subroutine" class="mw-redirect" title="Subroutine">Functions</a></li> <li><a href="/wiki/Include_directive#C" title="Include directive">Header files</a></li> <li><a href="/wiki/Operators_in_C_and_C%2B%2B" title="Operators in C and C++">Operators</a></li> <li><a href="/wiki/C_string_handling" title="C string handling">String</a></li> <li><a href="/wiki/C_syntax" title="C syntax">Syntax</a></li> <li><a href="/wiki/C_preprocessor" title="C preprocessor">Preprocessor</a></li> <li><a href="/wiki/C_data_types" title="C data types">Data types</a></li></ul> </div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="/wiki/C_standard_library" title="C standard library">Standard library</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"></div><table class="nowraplinks navbox-subgroup" style="border-spacing:0"><tbody><tr><td colspan="2" class="navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em"> <ul><li><a href="/wiki/C_character_classification" title="C character classification">Char</a></li> <li><a href="/wiki/C_file_input/output" title="C file input/output">File I/O</a></li> <li><a href="/wiki/C_mathematical_functions" title="C mathematical functions">Math</a></li> <li><a href="/wiki/C_dynamic_memory_allocation" title="C dynamic memory allocation">Dynamic memory</a></li> <li><a href="/wiki/C_string_handling" title="C string handling">String</a></li> <li><a href="/wiki/C_date_and_time_functions" title="C date and time functions">Time</a></li> <li><a href="/wiki/Stdarg.h" title="Stdarg.h">Variadic</a></li> <li><a href="/wiki/C_POSIX_library" title="C POSIX library">POSIX</a></li></ul> </div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Implementations</th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"> <ul><li><a href="/wiki/Bionic_(software)" title="Bionic (software)">Bionic</a> <ul><li><a href="/wiki/Hybris_(software)" class="mw-redirect" title="Hybris (software)">libhybris</a></li></ul></li> <li><a href="/wiki/Dietlibc" title="Dietlibc">dietlibc</a></li> <li><a href="/wiki/Glibc" title="Glibc">glibc</a> <ul><li><a href="/wiki/Embedded_GLIBC" class="mw-redirect" title="Embedded GLIBC">EGLIBC</a></li></ul></li> <li><a href="/wiki/Klibc" title="Klibc">klibc</a></li> <li><a href="/wiki/Microsoft_Windows_library_files" title="Microsoft Windows library files">Windows CRT</a></li> <li><a href="/wiki/Musl" title="Musl">musl</a></li> <li><a href="/wiki/Newlib" title="Newlib">Newlib</a></li> <li><a href="/wiki/UClibc" title="UClibc">uClibc</a></li></ul> </div></td></tr></tbody></table><div></div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="/wiki/List_of_C_compilers" class="mw-redirect" title="List of C compilers">Compilers</a></th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em"> <ul><li><a href="/wiki/Amsterdam_Compiler_Kit" title="Amsterdam Compiler Kit">ACK</a></li> <li><a href="/wiki/Borland_Turbo_C" class="mw-redirect" title="Borland Turbo C">Borland Turbo C</a></li> <li><a href="/wiki/Clang" title="Clang">Clang</a></li> <li><a href="/wiki/GNU_Compiler_Collection" title="GNU Compiler Collection">GCC</a></li> <li><a href="/wiki/Intel_C%2B%2B_Compiler" title="Intel C++ Compiler">ICC</a></li> <li><a href="/wiki/LCC_(compiler)" title="LCC (compiler)">LCC</a></li> <li><a href="/wiki/Norcroft_C_compiler" title="Norcroft C compiler">Norcroft C</a></li> <li><a href="/wiki/Portable_C_Compiler" title="Portable C Compiler">PCC</a></li> <li><a href="/wiki/Small_Device_C_Compiler" title="Small Device C Compiler">SDCC</a></li> <li><a href="/wiki/Tiny_C_Compiler" title="Tiny C Compiler">TCC</a></li> <li><a href="/wiki/Visual_Studio" title="Visual Studio">Visual Studio</a>, <a href="/wiki/Microsoft_Visual_Studio_Express" title="Microsoft Visual Studio Express">Express</a>, <a href="/wiki/Microsoft_Visual_C%2B%2B" title="Microsoft Visual C++">C++</a></li> <li><a href="/wiki/Watcom_C/C%2B%2B" title="Watcom C/C++">Watcom C/C++</a></li></ul> </div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="/wiki/Integrated_development_environment" title="Integrated development environment">IDEs</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"> <ul><li><a href="/wiki/Anjuta" title="Anjuta">Anjuta</a></li> <li><a href="/wiki/CLion" class="mw-redirect" title="CLion">CLion</a></li> <li><a href="/wiki/Code::Blocks" title="Code::Blocks">Code::Blocks</a></li> <li><a href="/wiki/CodeLite" title="CodeLite">CodeLite</a></li> <li><a href="/wiki/Eclipse_(software)" title="Eclipse (software)">Eclipse</a></li> <li><a href="/wiki/Geany" title="Geany">Geany</a></li> <li><a href="/wiki/GNOME_Builder" title="GNOME Builder">GNOME Builder</a></li> <li><a href="/wiki/KDevelop" title="KDevelop">KDevelop</a></li> <li><a href="/wiki/Visual_Studio" title="Visual Studio">Visual Studio</a></li> <li><a href="/wiki/NetBeans" title="NetBeans">NetBeans</a></li></ul> </div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Comparison with<br />other languages</th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em"> <ul><li><a href="/wiki/Compatibility_of_C_and_C%2B%2B" title="Compatibility of C and C++">Compatibility of C and C++</a></li> <li><a href="/wiki/Comparison_of_Pascal_and_C" title="Comparison of Pascal and C">Comparison with Pascal</a></li></ul> </div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Descendant<br />languages</th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"> <ul><li><a href="/wiki/C%2B%2B" title="C++">C++</a></li> <li><a href="/wiki/C_Sharp_(programming_language)" title="C Sharp (programming language)">C#</a></li> <li><a href="/wiki/D_(programming_language)" title="D (programming language)">D</a></li> <li><a href="/wiki/Objective-C" title="Objective-C">Objective-C</a></li> <li><a href="/wiki/Alef_(programming_language)" title="Alef (programming language)">Alef</a></li> <li><a href="/wiki/Limbo_(programming_language)" title="Limbo (programming language)">Limbo</a></li> <li><a href="/wiki/Go_(programming_language)" title="Go (programming language)">Go</a></li> <li><a href="/wiki/Vala_(programming_language)" title="Vala (programming language)">Vala</a></li></ul> </div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Designer</th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em"> <ul><li><a href="/wiki/Dennis_Ritchie" title="Dennis Ritchie">Dennis Ritchie</a></li></ul> </div></td></tr><tr><td class="navbox-abovebelow" colspan="2"><div> <ul><li><span class="noviewer" typeof="mw:File"><span title="Category"><img alt="" src="//upload.wikimedia.org/wikipedia/en/thumb/9/96/Symbol_category_class.svg/16px-Symbol_category_class.svg.png" decoding="async" width="16" height="16" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/en/thumb/9/96/Symbol_category_class.svg/23px-Symbol_category_class.svg.png 1.5x, //upload.wikimedia.org/wikipedia/en/thumb/9/96/Symbol_category_class.svg/31px-Symbol_category_class.svg.png 2x" data-file-width="180" data-file-height="185" /></span></span> <b><a href="/wiki/Category:C_(programming_language)" title="Category:C (programming language)">Category</a></b></li></ul> </div></td></tr></tbody></table></div> <div class="mw-references-wrap"><ol class="references"> <li id="cite_note-N3221-73"><span class="mw-cite-backlink"><b><a href="#cite_ref-N3221_73-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n3221.htm">"N3221 - Editor's Report, Post January 2024 Meeting"</a>. <i>open-std.org</i>. 2024-02-15.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=open-std.org&amp;rft.atitle=N3221+-+Editor%27s+Report%2C+Post+January+2024+Meeting&amp;rft.date=2024-02-15&amp;rft_id=https%3A%2F%2Fwww.open-std.org%2Fjtc1%2Fsc22%2Fwg14%2Fwww%2Fdocs%2Fn3221.htm&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AC23+%28C+standard+revision%29" class="Z3988"></span></span> </li> </ol></div> <!-- NewPP limit report Parsed by mw‐web.codfw.main‐f69cdc8f6‐2z5zb Cached time: 20241123173042 Cache expiry: 2592000 Reduced expiry: false Complications: [vary‐revision‐sha1, show‐toc] CPU time usage: 0.732 seconds Real time usage: 0.890 seconds Preprocessor visited node count: 5665/1000000 Post‐expand include size: 146721/2097152 bytes Template argument size: 4418/2097152 bytes Highest expansion depth: 10/100 Expensive parser function count: 67/500 Unstrip recursion depth: 1/20 Unstrip post‐expand size: 275692/5000000 bytes Lua time usage: 0.431/10.000 seconds Lua memory usage: 5673250/52428800 bytes Number of Wikibase entities loaded: 0/400 --> <!-- Transclusion expansion time report (%,ms,calls,template) 100.00% 765.963 1 -total 46.03% 352.603 1 Template:Reflist 40.22% 308.059 71 Template:Cite_web 12.89% 98.696 1 Template:C_language_revisions 12.33% 94.455 1 Template:Sidebar 10.91% 83.544 1 Template:Short_description 8.27% 63.340 1 Template:C_programming_language 7.97% 61.030 2 Template:Navbox 7.02% 53.798 2 Template:Pagetype 5.20% 39.839 61 Template:C-lang --> <!-- Saved in parser cache with key enwiki:pcache:idhash:61252437-0!canonical and timestamp 20241123173042 and revision id 1254909966. Rendering was triggered because: page-view --> </div><!--esi <esi:include src="/esitest-fa8a495983347898/content" /> --><noscript><img src="https://login.wikimedia.org/wiki/Special:CentralAutoLogin/start?type=1x1" alt="" width="1" height="1" style="border: none; position: absolute;"></noscript> <div class="printfooter" data-nosnippet="">Retrieved from "<a dir="ltr" href="https://en.wikipedia.org/w/index.php?title=C23_(C_standard_revision)&amp;oldid=1254909966">https://en.wikipedia.org/w/index.php?title=C23_(C_standard_revision)&amp;oldid=1254909966</a>"</div></div> <div id="catlinks" class="catlinks" data-mw="interface"><div id="mw-normal-catlinks" class="mw-normal-catlinks"><a href="/wiki/Help:Category" title="Help:Category">Categories</a>: <ul><li><a href="/wiki/Category:C_(programming_language)" title="Category:C (programming language)">C (programming language)</a></li><li><a href="/wiki/Category:Programming_language_standards" title="Category:Programming language standards">Programming language standards</a></li></ul></div><div id="mw-hidden-catlinks" class="mw-hidden-catlinks mw-hidden-cats-hidden">Hidden categories: <ul><li><a href="/wiki/Category:Articles_with_short_description" title="Category:Articles with short description">Articles with short description</a></li><li><a href="/wiki/Category:Short_description_is_different_from_Wikidata" title="Category:Short description is different from Wikidata">Short description is different from Wikidata</a></li><li><a href="/wiki/Category:Articles_with_example_C_code" title="Category:Articles with example C code">Articles with example C code</a></li></ul></div></div> </div> </main> </div> <div class="mw-footer-container"> <footer id="footer" class="mw-footer" > <ul id="footer-info"> <li id="footer-info-lastmod"> This page was last edited on 2 November 2024, at 08:03<span class="anonymous-show">&#160;(UTC)</span>.</li> <li id="footer-info-copyright">Text is available under the <a href="/wiki/Wikipedia:Text_of_the_Creative_Commons_Attribution-ShareAlike_4.0_International_License" title="Wikipedia:Text of the Creative Commons Attribution-ShareAlike 4.0 International License">Creative Commons Attribution-ShareAlike 4.0 License</a>; additional terms may apply. By using this site, you agree to the <a href="https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Terms_of_Use" class="extiw" title="foundation:Special:MyLanguage/Policy:Terms of Use">Terms of Use</a> and <a href="https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Privacy_policy" class="extiw" title="foundation:Special:MyLanguage/Policy:Privacy policy">Privacy Policy</a>. Wikipedia® is a registered trademark of the <a rel="nofollow" class="external text" href="https://wikimediafoundation.org/">Wikimedia Foundation, Inc.</a>, a non-profit organization.</li> </ul> <ul id="footer-places"> <li id="footer-places-privacy"><a href="https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Privacy_policy">Privacy policy</a></li> <li id="footer-places-about"><a href="/wiki/Wikipedia:About">About Wikipedia</a></li> <li id="footer-places-disclaimers"><a href="/wiki/Wikipedia:General_disclaimer">Disclaimers</a></li> <li id="footer-places-contact"><a href="//en.wikipedia.org/wiki/Wikipedia:Contact_us">Contact Wikipedia</a></li> <li id="footer-places-wm-codeofconduct"><a href="https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Universal_Code_of_Conduct">Code of Conduct</a></li> <li id="footer-places-developers"><a href="https://developer.wikimedia.org">Developers</a></li> <li id="footer-places-statslink"><a href="https://stats.wikimedia.org/#/en.wikipedia.org">Statistics</a></li> <li id="footer-places-cookiestatement"><a href="https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Cookie_statement">Cookie statement</a></li> <li id="footer-places-mobileview"><a href="//en.m.wikipedia.org/w/index.php?title=C23_(C_standard_revision)&amp;mobileaction=toggle_view_mobile" class="noprint stopMobileRedirectToggle">Mobile view</a></li> </ul> <ul id="footer-icons" class="noprint"> <li id="footer-copyrightico"><a href="https://wikimediafoundation.org/" class="cdx-button cdx-button--fake-button cdx-button--size-large cdx-button--fake-button--enabled"><img src="/static/images/footer/wikimedia-button.svg" width="84" height="29" alt="Wikimedia Foundation" loading="lazy"></a></li> <li id="footer-poweredbyico"><a href="https://www.mediawiki.org/" class="cdx-button cdx-button--fake-button cdx-button--size-large cdx-button--fake-button--enabled"><img src="/w/resources/assets/poweredby_mediawiki.svg" alt="Powered by MediaWiki" width="88" height="31" loading="lazy"></a></li> </ul> </footer> </div> </div> </div> <div class="vector-settings" id="p-dock-bottom"> <ul></ul> </div><script>(RLQ=window.RLQ||[]).push(function(){mw.config.set({"wgHostname":"mw-web.codfw.main-f69cdc8f6-lwkv4","wgBackendResponseTime":128,"wgPageParseReport":{"limitreport":{"cputime":"0.732","walltime":"0.890","ppvisitednodes":{"value":5665,"limit":1000000},"postexpandincludesize":{"value":146721,"limit":2097152},"templateargumentsize":{"value":4418,"limit":2097152},"expansiondepth":{"value":10,"limit":100},"expensivefunctioncount":{"value":67,"limit":500},"unstrip-depth":{"value":1,"limit":20},"unstrip-size":{"value":275692,"limit":5000000},"entityaccesscount":{"value":0,"limit":400},"timingprofile":["100.00% 765.963 1 -total"," 46.03% 352.603 1 Template:Reflist"," 40.22% 308.059 71 Template:Cite_web"," 12.89% 98.696 1 Template:C_language_revisions"," 12.33% 94.455 1 Template:Sidebar"," 10.91% 83.544 1 Template:Short_description"," 8.27% 63.340 1 Template:C_programming_language"," 7.97% 61.030 2 Template:Navbox"," 7.02% 53.798 2 Template:Pagetype"," 5.20% 39.839 61 Template:C-lang"]},"scribunto":{"limitreport-timeusage":{"value":"0.431","limit":"10.000"},"limitreport-memusage":{"value":5673250,"limit":52428800}},"cachereport":{"origin":"mw-web.codfw.main-f69cdc8f6-2z5zb","timestamp":"20241123173042","ttl":2592000,"transientcontent":false}}});});</script> <script type="application/ld+json">{"@context":"https:\/\/schema.org","@type":"Article","name":"C23 (C standard revision)","url":"https:\/\/en.wikipedia.org\/wiki\/C23_(C_standard_revision)","sameAs":"http:\/\/www.wikidata.org\/entity\/Q67693987","mainEntity":"http:\/\/www.wikidata.org\/entity\/Q67693987","author":{"@type":"Organization","name":"Contributors to Wikimedia projects"},"publisher":{"@type":"Organization","name":"Wikimedia Foundation, Inc.","logo":{"@type":"ImageObject","url":"https:\/\/www.wikimedia.org\/static\/images\/wmf-hor-googpub.png"}},"datePublished":"2019-07-10T16:24:26Z","dateModified":"2024-11-02T08:03:30Z","headline":"C programming language standard, 2023 revision"}</script> </body> </html>

Pages: 1 2 3 4 5 6 7 8 9 10