Can I use C language to program a CPLD/FPGA?
Generally you can. There is free SystemC for HLS(High Level Synthesis). HLS is getting more and more popular but what you have to remember is that you do not program CPLDs /FPGAs using C language, you rather describe hardware using C language. To make it work on real hardware you need vendor specific HLS tools.

In my opinion, writing synthesizable description in C is harder than in Verilog/VHDL but it is usually faster if you are familiar with the syntax and you follow some extra rules.