What are the areas (uses) of the use of the language of C/C++?
i want advanced uses of c/c++ to choose the best for me and for the future.

Dani AI

Generated

A short expert add‑on to the thread: the earlier replies from , and correctly highlight that C and C++ power a lot of system and performance‑sensitive software. One important clarification: characterizing “operating systems” as simply “written in C++” is an oversimplification — kernels are most often implemented in C (plus small bits of assembly) while higher‑level OS components, drivers and user‑space subsystems may use C++, Objective‑C or other languages. (kernel.org)

Areas worth adding that receive steady, high‑value demand (and are distinct from the examples already posted):

Embedded firmware and RTOS stacks — microcontroller and small‑footprint device code is primarily C/C++ (many vendor SDKs expose C/C++ APIs). Arduino sketches are built as C/C++; ARM Mbed targets C++ applications; FreeRTOS is a widely used RTOS implemented in C. (support.arduino.cc)

High‑performance compute, numeric libraries and GPU acceleration — science, simulation and ML cores are commonly written in C or modern C++. Eigen is a popular C++ linear‑algebra library; GPU programming uses CUDA C/C++ or OpenCL C for kernel code and acceleration. These areas reward low‑level performance knowledge. (libeigen.gitlab.io)

Large infrastructure and security stacks — major browser engines and other large apps are mainly C++; core system libraries, cryptography toolkits and many database engines are implemented in C/C++ (examples include Chromium/Blink, glibc, OpenSSL and PostgreSQL). Mastery of modern C++ plus the C toolchain is directly applicable here. (en.wikipedia.org)

Practical takeaway (career focus): strong C fundamentals (memory, pointers, low‑level debugging) remain essential for firmware and kernels; modern C++ (C++11 and later, plus the C++ Core Guidelines and current toolchain practices) is the skill set for large, high‑performance codebases and libraries. For long‑term options, combine both foundations and modern C++ practices. (microsoft.github.io)

Recommended Answers

All 3 Replies

Member Avatar for Member #1113355

Game engines are written in c/c++. I've heard that driver software is also written in c/c++ due to the lower-level cababilities of the language. VLC media is written in c from what I've heard. I'd say c/c++ is still the standard in pc programming and software engineering, although Java is also widely used.

Here is a few links regarding applications written in c++ - http://www.stroustrup.com/applications.html
http://www.cantrip.org/realworld.html
http://programmers.stackexchange.com/questions/61248/what-is-the-role-of-c-today

The vast majority of infrastructure code is in C++, or a C/C++ mix. The back-bone of most high-level language support structures (libraries, compilers, interpreters, virtual machines, etc.) are written in C/C++. 3D computer games are mostly in C++. Operating systems are mostly a mix of C and C++, that includes both the kernel itself and the low-level tools surrounding it. Most of robotics programming is in C++. Lots of server-side stuff, like web-servers and database engines are written in C++. A very large amount of end-user applications (especially the more complex ones) are written in C++ too, I mean things like Photoshop or MS Office. Also, lots of big-data analytics software and other things like that are often in C++ too.

Basically, for anything that is complex enough, C is too crude and minimalistic. And for anything that is critical in terms of robustness and performance, high-level languages (Java, C#, Python, etc.) simply don't match up to C++. And the area that stands at the intersection of those two things is huge, and it's where C++ is used the most.

C++ may not come out of top in terms of total lines of code in the world (out-ranked by C and Java). In part due to fact that well-written C++ is a lot more terse (fewer lines) than other languages, especially C and Java. But mostly the reason is that C is still huge because of its longer history as the number 1 language, and the existence of lots and lots of legacy C code that people are not just going to throw away because of some preference for a more modern language. And also because some languages that are more directed at end-user applications (Java, C#, Python, etc.), because end-user applications are very numerous, very easy to create, and are often incredibly verbose (therefore enflating the number of lines), and they are also very popular among the hordes of novice programmers. And finally, the area of application that C++ does not cover at all is mainly web-development (even though it often plays a big role in web-infrastructure programs), which is an increasingly big portion of the "market".

I would want to add the following:

C:
C compiler is written in C.

C++:
C++ compiler is written in C++.

Java:
Sun actually has multiple JVMs. The HotSpot JVM is written largely in C++, because HotSpot is heavily based on the Animorphic Smalltalk VM which is written in C++.

Python:
Python's mainstream implementation is in C.

C#:
C# compiler is written in C++ and in C#

Operating systems like Windows, Linux, Unix, Android, MaxOS:
Are written in C++.

Microsoft:
Literally everything at Microsoft is built using C++.

This probably means that C++ is also a very good language to write operating systems, compilers and interpreters.

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.