Yeah, from my experience, looks like most embedded C developers out there had learn some at uni, but really just the basics and not "learned" it as a programming language, as it should be. Then they just discover things as they go, in the professional world. Some will learn along the way, many will just apply some "recipes" and go on like this for years.
One key reason is that C looks so simple that everyone assumes it's like the BASIC of current programming languages and doesn't need any real learning.
Even if I don't buy it for a number of reasons that don't belong in this thread, I think that's one thing for which much more complex languages like Rust do better, regardless of their own technical merits: they just are too complex to be used without learning them. So, you're forced to learn, and that's a good thing.
Languages that seem simple enough almost not to need learning are, in the end, a plague. The idea looks all nice - like, make programming more accessible to everyone - but the reality is harsh. They just promote bad habits, quick recipes and cargo cult programming. Just my opinion.