system
Given the following post, respond as if you're commenting on Reddit:
human
Why should I learn C when I know C++?

Hello all, I have an interest in some lower level learning of lower level languages, I already know (some) C++ from classwork but have developed a bit of an interest in C due to conversations with co-workers/friends.  


Never really had to use it specifically for anything, but I'd like to exercise my brain a bit and think it could be interesting to get into embedded systems programming.

&#x200B;

I am not particularly afraid of manual implementations of things taken for granted in Java, Python or whatever else.

&#x200B;

So why should I learn specifically C over just using C++ or something like Rust?  


  
Side question: is there a way to play with specifically asm in a simulated environment?  Most of my experience is in high level app dev, not low level stuff so I am not very well oriented.  Thanks!
gpt
C and C++ are very very different languages today.  

Even though they can compile and link with each other or snippets of each can be embedded in the other, it better to think of them as totally different languages that happen to have a similar name.   Like Java and Javascript, but if the Java compiler could accept some Javascript syntax.

Imagine a language that is like C++ but you have 1) no new/delete 2) no iostreams 3) no templates 4) no operators 5) no built in data structures at all 6) no language support for classes, inheritance, or polymorphism 7) no constructors 8) no algorithms except sort and binary search 9) no references or const references. 10) it takes special effort to link with C++ functions.

At that point how is it even C++?  Its not.  It's totally different.

C is a totally different language from C++ now.