I think it is simpler and "the compiler not helping" == "things are more transparent".
int a = 3;
foo(a);
// What value has a ?
There are various things one does not have to worry about when using C instead of C++. But the brain needs some time to get used to it.
I think I get what you're trying to say, but you may have picked a bad example, here: