>>12448516C hands down.
C++ can be fine.... as long as you stay the fuck away from templates, inheritance, and overloading. and try to stay away from dynamic memory bullshit and too many layers of abstraction. If anyone starts with "it's good to hide implementation" they're already too far gone into the propaganda.
Had a dumbfuck give a presenation about how they wanted to add 5 interface classes to every god-damned thing in our system so they could have a "contract" to the users and easily switch between implementations.
A header file. The .h files. That's exactly what this is. C has had them for fucking decades. These are literally the things describing how to interface to your module.