this post was submitted on 02 Dec 2023
14 points (100.0% liked)

C Programming Language

931 readers
22 users here now

Welcome to the C community!

C is quirky, flawed, and an enormous success.
... When I read commentary about suggestions for where C should go, I often think back and give thanks that it wasn't developed under the advice of a worldwide crowd.
... The only way to learn a new programming language is by writing programs in it.

© Dennis Ritchie

🌐 https://en.cppreference.com/w/c

founded 1 year ago
MODERATORS
 

Hey, so I've been searching the web for a while for some popular applications that use C. All that I can find so far is, Git, Vim, Linux, and Unix. I also know the Windows kernel uses it a little bit, but that's it. Does anyone know some popular apps that use C? Doesn't have to be programming related, just an actual app that's written in C? Sorry if this question sounds redundant or anything.

all 12 comments
sorted by: hot top controversial new old
[–] netchami 21 points 8 months ago

Basically all drivers and kernels.

GNU coreutils, sudo, SVN, curl, vim, etc.

Also things you often use on servers like Bind 9 DNS server, httpd, nginx, the Dovecot mail server and others

If you are looking for an actual application, a big chunk of OBS Studio is written in C

[–] [email protected] 9 points 8 months ago* (last edited 8 months ago)

Practically everything written before 2000. MS Word and Excel definitely Everything in your system32 directory

[–] [email protected] 8 points 8 months ago

Sqlite3 is written in C and it's used everywhere!

[–] [email protected] 4 points 8 months ago

Many of the calculation heavy python libraries like numpy are partially written in C

[–] [email protected] 3 points 8 months ago

I dare say anything from the GNOME project.

[–] [email protected] 3 points 8 months ago (1 children)

Lua was built with C, and exposes some of C's standard libraries in its scripting.

[–] [email protected] 1 points 8 months ago
[–] [email protected] 3 points 8 months ago* (last edited 8 months ago) (1 children)

Just about every language is written in C. Even GW-BASIC was written in C (most BASIC interpreters were written in assembly code at the time).

When all the code was being rewritten for Y2K, C was used because it was really the only language that was portable at the time, you could write the program on a PC, and then compile and configure it on a mainframe, or vice versa.

A more pertinent question would be what isn't wriiten in C.

Critical software, like interfaces, machine operation or database systems, are generally not written in C. That's because C code can be dense and obscure. If the original programmer retire or goes missing, and the system crashes, no one else may have a clue what they've actually coded. So a more explicable, higher level language is used and C is quarantined to use in system software where its power and access is useful.

[–] infamousta 2 points 8 months ago

I know you mean software applications, but another very common application of C is almost any device that uses a microcontroller unit (which is probably dozens of things you own right now). It is incredibly adept at interfacing with processing units at a level close to the metal.

That’s also why you’ll see OS kernels and low level system tools and libs in C as well. It provides a good balance of functionality and abstraction so you can scaffold from register manipulation and interrupt functions up to high level code very quickly.

It also provides a good application binary interface (standards of interoperation with other languages) so you’ll find a lot of applications may be written in C++, Java, Python, etc. but they use a decent amount of core functionality implemented in C.

[–] [email protected] 1 points 6 months ago

If you want a large standalone app there's GIMP.

[–] [email protected] 1 points 8 months ago* (last edited 8 months ago)

Postgres and MySQL/mariadb are all primarily written in C.

Contrary to what other posters here claim, most programming languages are not written in C, but are self hosted. Ie. written using themselves. This usually involves a small bootstrapping component written in C or something similar, but that is a minor part of a whole