It depends.

Most often it is used to compile/build C or C++ programs though you can pile more on top of it to compile other languages that use C or C++ as an intermediate stage of compilation.

So can you "convert" programs written using it? Yes and no. Depending on the program this might be trivial or quite involved, but I doubt there are tools that even do the half-assed job a VS.Net VB6 to VFred conversion does. A program in C is so much "closer to the bare metal" than a .Net program it isn't funny. You might be able to make a C# program do the same thing as long as you're simply dealing with computation and string manipulation.


Its main advantage is probably the similarity in C syntax, fundamental libraries, and tools across multiple platforms. For example if you program with MinGW then moving to another GCC target such as ARM is an easy process. Think of it as providing a C compiler and tools at about the level of the command line compiler and tools in the older .Net SDKs. There isn't even an editor provided, let alone an IDE.