SDL is written in C, but bindings are available for multiple languages, including C++ and C#. As it happens I was actually using it with C++. And there are other libraries you could use instead, like GLFW or Allegro.
I've never thought of C as being that much lower-level than C++, but I guess everything's relative.