Have a look at mBed - it's C++ rather than C, but it works with a wide range of boards / chips, many of which are cheap and has a solid range of libraries. I've used it mostly with STM32 boards. It uses the Arm compiler as standard, but can be switched to GCC
https://os.mbed.com/studio/