C

general-purpose programming language

C is a general-purpose programming language. It was created in the 1970s by Dennis Ritchie and remains widely used and influential. By design, C gives the programmer relatively direct access to the โ€ฆ Wikipedia
Factsheet
Designed by Dennis Ritchie
Developer ANSI X3J11 (ANSI C); ISO/IEC JTC 1 (Joint Technical Committee 1) / SC 22 (Subcommittee 22) / WG 14 (Working Group 14) (ISO C)
Factsheet
Designed by Dennis Ritchie
Developer ANSI X3J11 (ANSI C); ISO/IEC JTC 1 (Joint Technical Committee 1) / SC 22 (Subcommittee 22) / WG 14 (Working Group 14) (ISO C)
๐ŸŒ
Wikipedia
en.wikipedia.org โ€บ wiki โ€บ C_(programming_language)
C (programming language) - Wikipedia
November 10, 2001 - C is an imperative procedural language, supporting structured programming, lexical variable scope, and recursion, with a static type system. It was designed to be compiled to provide low-level access to memory and language constructs that map efficiently to machine instructions, all with minimal ...
๐ŸŒ
W3Schools
w3schools.com โ€บ c โ€บ c_intro.php
Introduction to C
Create Variables Format Specifiers Change Values Multiple Variables Variable Names Real-Life Examples C Data Types
๐ŸŒ
Reddit
reddit.com โ€บ r/cprogramming โ€บ why just no use c ?
r/cprogramming on Reddit: Why just no use c ?
January 22, 2025 -

Since Iโ€™ve started exploring C, Iโ€™ve realized that many programming languages rely on libraries built using C โ€œbindings.โ€ I know C is fast and simple, so why donโ€™t people just stick to using and improving C instead of creating new languages every couple of years?

Top answer
1 of 40
59
C has some serious shortcomings that make it impractical or uncomfortable to use for many tasks. I wouldn't want to do, for example, web development in C. As for improving C, that happens but extremely slowly. C is rather unique in that it is a foundational language for just about every computer on the planet from the microcontroller in your electric toothbrush to the largest supercomputers. There are tens or hundreds of compilers in daily use. Every change to the language upsets someone and takes years to get through the standardization process. This is not necessarily a bad thing, C should evolve very conservatively.
2 of 40
31
Any sufficiently complicated C or Fortran program contains an ad hoc, informally-specified, bug-ridden, slow implementation of half of Common Lisp. --Greenspun's tenth rule C is used a great deal, and has been for a long time. But to get it up to the level of convenience and rapid-prototyping capability of (say) Python, one would pretty much have to implement something like Python! (CPython, the reference implementation, is, in fact, written in C!) Python (mostly) doesn't segfault. It (mostly) doesn't leak memory. You can load new functions into the program while it's running. It's easy to accidentally segfault or leak memory or generally mess up a pointer and read or write memory where you didn't want to. That mostly doesn't happen in Python. Many things that have to be design patterns in C are built into the language. It has dynamic typing, iterators, hash tables, automatic array resizing, a garbage collecter, a large standard library. The stack trace almost always points you to exactly your problem, but in C, you might accidentally overwrite the information you needed to debug it! Compared to Python, C feels tedious. Of course, there are costs to all of that. Python seem slow and bloated in comparison. In practice, CPython projects get most of the best of both worlds, because the fast library code gets written in C, and the slow Python code just glues those libraries together. Still bloated though.
๐ŸŒ
Nokia
nokia.com โ€บ bell-labs โ€บ about โ€บ dennis-m-ritchie โ€บ chist.html
The Development of the C Language
C came into being in the years 1969-1973, in parallel with the early development of the Unix operating system; the most creative period occurred during 1972. Another spate of changes peaked between 1977 and 1979, when portability of the Unix system was being demonstrated.
๐ŸŒ
HowStuffWorks
computer.howstuffworks.com โ€บ tech โ€บ computer software โ€บ programming
The Basics of C Programming | HowStuffWorks
March 8, 2023 - The C programming language is a popular and widely used programming language for creating computer programs.
๐ŸŒ
GeeksforGeeks
geeksforgeeks.org โ€บ c language โ€บ c-programming-language
C Programming Tutorial - GeeksforGeeks
C is a general-purpose mid-level programming language developed by Dennis M. Ritchie at Bell Laboratories in 1972. It was initially used for the development of UNIX operating system, but it later became popular for a wide range of applications.
Published ย  October 13, 2025
๐ŸŒ
Cprogramming.com
cprogramming.com
Learn C and C++ Programming - Cprogramming.com
The best site for C and C++ programming. Popular, beginner-friendly C and C++ tutorials to help you become an expert!
๐ŸŒ
Reddit
reddit.com โ€บ r/explainlikeimfive โ€บ eli5:what is the difference between c, c+, c++ and c#?
r/explainlikeimfive on Reddit: ELI5:What is the difference between C, C+, C++ and C#?
April 30, 2012 - C# is a C like language made by MS to try and suit their own needs and make writing applications for Windows and other MS products more easy.
Find elsewhere
๐ŸŒ
Wikipedia
en.wikipedia.org โ€บ wiki โ€บ C--
C-- - Wikipedia
October 15, 2025 - C-- is a "portable assembly language", designed to ease the implementation of compilers that produce high-quality machine code. This is done by delegating low-level code-generation and program optimization to a C-- compiler.
๐ŸŒ
Amazon
amazon.com โ€บ Programming-Language-2nd-Brian-Kernighan โ€บ dp โ€บ 0131103628
Amazon.com: C Programming Language, 2nd Edition: 9780131103627: Brian W. Kernighan, Dennis M. Ritchie: Books
Written by the developers of C, this new version helps readers keep up with the finalized ANSI standard for C while showing how to take advantage of C's rich set of operators, economy of expression, improved control flow, and data structures. The 2/E has been completely rewritten with additional examples and problem sets to clarify the implementation of difficult language constructs.
๐ŸŒ
Reddit
reddit.com โ€บ r/c_programming โ€บ could someone explain the use of the asterisk * in c and how it is used?
r/C_Programming on Reddit: Could someone explain the use of the asterisk * in C and how it is used?
April 26, 2022 -

I am currently working on an assignment in C where we are required to make a stack by simply using pointers.

I know the line: int *ptr = &val; declares ptr to be a "pointer to"(which is my interpretation of what asterisk * means in C) the "address of" the integer variable val.

When I want to create a double pointer, or a pointer to a pointer, I do so like:

int **ptr_ptr = &ptr; By setting ptr_ptr to a "pointer to" the address of pointer ptr.

When we use the asterisk anywhere other than in a declaration, it is usually referred to as dereferencing that pointer (I think), and grabbing the value that the pointer actually points to. This goes against my intuition that an asterisk means "pointer to".

Could anybody explain the proper meaning of the asterisk in C? Is it just that it means different things depending on how it is used (i.e. in a declaration versus anywhere else)?

Thanks!

๐ŸŒ
Wikipedia
en.wikipedia.org โ€บ wiki โ€บ C++
C++ - Wikipedia
1 month ago - C++ is a high-level, general-purpose programming language created by Danish computer scientist Bjarne Stroustrup. First released in 1985 as an extension of the C programming language, adding object-oriented (OOP) features, it has since expanded ...
๐ŸŒ
Wikipedia
en.wikipedia.org โ€บ wiki โ€บ Cunt
Cunt - Wikipedia
3 weeks ago - It is often used as a disparaging and obscene term for a woman in the United States, an unpleasant or objectionable person (regardless of gender) in the United Kingdom and Ireland, or a contemptible man in Australia and New Zealand.
๐ŸŒ
Reddit
reddit.com โ€บ r โ€บ C_Programming
C
March 27, 2008 - r/C_Programming: The subreddit for the C programming language
๐ŸŒ
GNU
gnu.org โ€บ software โ€บ gnu-c-manual โ€บ gnu-c-manual.html
The GNU C Reference Manual
This is a reference manual for the C programming language as implemented by the GNU Compiler Collection (GCC).