• The claims of there being "32" keywords in C refer to the original ANSI-specified version of C from 1989, aka C89.
    • Because this is the Internet, and because the real C specifications are behind ISO's ridiculous paywall most people so-inclined probably can't fact-check the claim.
    • And it's not a claim worth fact-checking: the number of keywords in a language is utter trivia of no consequence.
  • The ISO/IEC 9899 specification you linked to refers to C17 (the proposed updated C specification in 2017) which postdates C89 by 28 years.
  • It should come as no surprise that a future updated revision of a programming language introduces new keywords.

Historically, when C was introduced, people were impressed by its minimalist syntax and how the language's design effectively reified everything by implementing functionality as library features instead of language features which is what keeps C simple and helps mitigate every language's designer's fears about feature creep.

In comparison, C's early contemporaries like COBOL, opted to implement functionality into their own languages as first-class features, which is why COBOL has over 300 keywords; so I'll admit that using the stark difference in keyword-count does serve as a proxy for language-complexity and by extension: a way to almost quantify good design. But using it as the basis for comparing languages today in 2021 is of limited-utility as the most relevant programming languages today1 are already either inspired by C or derived from it somehow, and they all share C's decision to do things in the library instead of the language, so all those languages similarly have a low keyword count compared to COBOL, SQL, and others, and so that's why C's keyword count just isn't interesting anymore.


1: C-inspired or C-derived languages in use today: C++, Objective-C, Java, Groovy, Swift, C#, JavaScript, TypeScript, Go, PHP, Perl. Other popular languages that aren't modelled on C (like Haskell, OCaml, etc) do share C's library-first philosophy, but I can't say if C originated it or not - but I feel that languages opting for library-first designs is inevitable: the cost to implement language-features is easily ten-fold that of implementing library features.

Answer from Dai on Stack Overflow
Top answer
1 of 1
8
  • The claims of there being "32" keywords in C refer to the original ANSI-specified version of C from 1989, aka C89.
    • Because this is the Internet, and because the real C specifications are behind ISO's ridiculous paywall most people so-inclined probably can't fact-check the claim.
    • And it's not a claim worth fact-checking: the number of keywords in a language is utter trivia of no consequence.
  • The ISO/IEC 9899 specification you linked to refers to C17 (the proposed updated C specification in 2017) which postdates C89 by 28 years.
  • It should come as no surprise that a future updated revision of a programming language introduces new keywords.

Historically, when C was introduced, people were impressed by its minimalist syntax and how the language's design effectively reified everything by implementing functionality as library features instead of language features which is what keeps C simple and helps mitigate every language's designer's fears about feature creep.

In comparison, C's early contemporaries like COBOL, opted to implement functionality into their own languages as first-class features, which is why COBOL has over 300 keywords; so I'll admit that using the stark difference in keyword-count does serve as a proxy for language-complexity and by extension: a way to almost quantify good design. But using it as the basis for comparing languages today in 2021 is of limited-utility as the most relevant programming languages today1 are already either inspired by C or derived from it somehow, and they all share C's decision to do things in the library instead of the language, so all those languages similarly have a low keyword count compared to COBOL, SQL, and others, and so that's why C's keyword count just isn't interesting anymore.


1: C-inspired or C-derived languages in use today: C++, Objective-C, Java, Groovy, Swift, C#, JavaScript, TypeScript, Go, PHP, Perl. Other popular languages that aren't modelled on C (like Haskell, OCaml, etc) do share C's library-first philosophy, but I can't say if C originated it or not - but I feel that languages opting for library-first designs is inevitable: the cost to implement language-features is easily ten-fold that of implementing library features.

๐ŸŒ
W3Schools
w3schools.com โ€บ c โ€บ c_ref_keywords.php
C Keywords
C Examples C Real-Life Examples C Exercises C Quiz C Compiler C Syllabus C Study Plan C Interview Q&A C Certificate ... A list of useful C keywords can be found in the table below.
Discussions

List of 32 Keywords in C Programming
One of the reasons I loved C in the past and love python in the last few years. Just compare to Cobol with which I used to program some nifty programs or Business Central AL which I'm using to earn (good) money lately: these are hell on earth. More on reddit.com
๐ŸŒ r/programming
2
0
February 19, 2023
C and C++ seem to have an endless amount of reserved keywords, and being put on projects made by older, experienced people there seem to be too many ways of achieving the same thing - how do I ever catch up?
https://en.cppreference.com/w/cpp/keyword Its really not that bad in terms of keywords. If you struggle with using stuff from the STL then you need some tutorials, just that. Have a look at these CppCon 2018: Jonathan Boccara โ€œ105 STL Algorithms in Less Than an Hourโ€ https://www.modernescpp.com/index.php/table-of-content/ https://github.com/AnthonyCalandra/modern-cpp-features More on reddit.com
๐ŸŒ r/cpp_questions
28
9
July 9, 2023
Does the number of keywords really matter?
I don't know that I think the number of keywords is directly problematic, but I do think that if your count is in the hundreds, there might be valid concerns about the design. Like... why are there so many keywords? Why can't some of those be library functions instead? Generally, I think it's preferable to reduce the number of keywords because keywords are special-case actions. Each of them requires individual handling. To put it in terms of theoretical language design, each keyword typically adds a few cases to the reduction relation , and having a bunch of keywords adds needless complexity when some simple forethought might allow for dramatic simplification of the language semantics. But if you actually have 200 special cases of semantic operations that absolutely cannot possibly be implemented in terms of other operations already available... then yeah, sure, go for it! More on reddit.com
๐ŸŒ r/ProgrammingLanguages
69
41
October 23, 2022
How to use the volatile keyword in C?
By continuing, you agree to our User Agreement and acknowledge that you understand the Privacy Policy. ... Accessibility Reddit, Inc. More on reddit.com
๐ŸŒ r/C_Programming
19
47
July 31, 2019
๐ŸŒ
Dspmuranchi
dspmuranchi.ac.in โ€บ pdf โ€บ Blog โ€บ GKS_Keywords.pdf pdf
Keywords in C
building block of a 'C' program. There are total 32 keywords in 'C'. Keywords are
๐ŸŒ
GeeksforGeeks
geeksforgeeks.org โ€บ c language โ€บ keywords-in-c
Keywords in C - GeeksforGeeks
August 30, 2025 - Keywords are predefined or reserved words that have special meanings to the compiler. These are part of the syntax and cannot be used as identifiers in the program.
๐ŸŒ
Reddit
reddit.com โ€บ r/programming โ€บ list of 32 keywords in c programming
r/programming on Reddit: List of 32 Keywords in C Programming
February 19, 2023 - One of the reasons I loved C in the past and love python in the last few years. Just compare to Cobol with which I used to program some nifty programs or Business Central AL which I'm using to earn (good) money lately: these are hell on earth. ... Note that these are reserved keywords in the C programming language, and cannot be used as variable names or identifiers in your program.
๐ŸŒ
cppreference.com
en.cppreference.com โ€บ w โ€บ c โ€บ keyword.html
C keywords - cppreference.com
This is a list of reserved keywords in C. Since they are used by the language, these keywords are not available for re-definition.
๐ŸŒ
Wikipedia
en.wikipedia.org โ€บ wiki โ€บ C_(programming_language)
C (programming language) - Wikipedia
November 10, 2001 - In the second edition of their book The C Programming Language, which describes what became known as C89, Kernighan and Ritchie wrote, "The ... [keyword] entry, formerly reserved but never used, is no longer reserved." and "The stillborn entry keyword is withdrawn." C supports a rich set of operators, which are symbols used within an expression to specify the manipulations ...
Find elsewhere
๐ŸŒ
ScholarHat
scholarhat.com โ€บ home
Keywords in C: List of Keywords
In this example, the loop repeats while x is less than 100, printing x in each iteration. The C keywords are essential language constructs with established meanings. Understanding these keywords is critical for error-free coding. Further, tokens include different aspects of C++ code like keywords, identifiers, constants, strings, special symbols, & operators, making them the core of C programs.
Published ย  July 29, 2025
๐ŸŒ
Medium
kevanz532.medium.com โ€บ understanding-33-keywords-of-c-programming-3578de01964b
UNDERSTANDING 33 KEYWORDS OF C PROGRAMMING | by KALUMBA GIDEON | Medium
May 7, 2021 - Here are the main 33 keywords of c. ... As seen above those are the keywords used in C programming.
๐ŸŒ
PREP INSTA
prepinsta.com โ€บ home โ€บ all about c language โ€บ identifiers and keywords in c
Identifiers and Keywords in C language | Prepinsta
June 23, 2025 - Since keywords are referred name for compiler, they can not be used as variable name. There are fixed number of Keyword in C programming language and every Keyword serve as a building block for program statements.
๐ŸŒ
Programiz
programiz.com โ€บ c-programming โ€บ list-all-keywords-c-language
List of all Keywords in C Language
There are all together 32 keywords in C programming language. A brief description of all keywords in C programming is given in this tutorial.
๐ŸŒ
Quora
cstdspace.quora.com โ€บ Does-the-C-programming-language-really-only-have-32-keywords
Does the C programming language really only have 32 keywords? - C Programmers - Quora
Answer (1 of 4): That was true up to the introduction of C99, 22 years ago. It's grown since then, as I discuss in this answer: https://www.quora.com/How-do-you-write-a-program-in-C-using-all-32-keywords-available-in-C/answer/Joe-Zbiciak Now where is everyone getting this 32 number from? That nu...
๐ŸŒ
Codecademy
codecademy.com โ€บ docs โ€บ keywords
C | Keywords | Codecademy
January 25, 2025 - C provides a small set of keywords compared to modern programming languages, ensuring simplicity and performance. Understanding keywords is essential for learning the language and using its features effectively. ... Looking for an introduction to the theory behind programming?
๐ŸŒ
WsCube Tech
wscubetech.com โ€บ resources โ€บ c-programming โ€บ keywords
Keywords in C Language (Full List With Examples)
August 29, 2025 - Explore the full list of keywords in C language with detailed examples. Learn how these reserved words are used in programming to write efficient C code.
๐ŸŒ
GitHub
github.com โ€บ e3b0c442 โ€บ keywords
GitHub - e3b0c442/keywords: A list and count of keywords in programming languages.
A list and count of keywords in programming languages. - e3b0c442/keywords
Starred by 265 users
Forked by 26 users
Languages ย  Go
๐ŸŒ
Scaler
scaler.com โ€บ topics โ€บ cpp โ€บ keywords-in-cpp
C++ Keywords - Scaler Topics
January 20, 2022 - We can declare a variable 'nums' with any value, but we can't use keywords for this purpose. There are a total of 95 Keywords in C++. Some of them are defined below:
๐ŸŒ
GeeksforGeeks
geeksforgeeks.org โ€บ c language โ€บ tokens-in-c
Tokens in C - GeeksforGeeks
July 23, 2025 - These cannot be used as identifiers (variable names, function names, etc.). Keywords define the structure and behavior of the program C language supports 32 keywords such as int, for, if, ...