-
Which platform to use?
I'm about to choose where to program in C (or C11 preferably).
I don't have any chosen platform (OS,GUI/IDE) yet, but I need my programs to be very easily portable to other OS's (primarily Linux & Windows).
I worry the most about the compatibility for windows in different OS's. How portable are these libraries? Can I use the same source code for any OS?
I will be doing normal programs, like random numbers, internet-connecting, static graphics, logging in, save-to-file, etc.
The question is, where do I get the most from a chosen platform to do this?
Should I use a GUI-program like Visual Studio (I have an academic licence), an IDE like Eclipse or just a raw pad like QT?
PS. I am reasonably new to programming, so I haven't really developed any preferences yet, so shape me in the right way, please ;)
PPS. I must program in C, not C++.
-
First if your just leaning C, I wouldn't worry too much about portability at the onset. First learn the language. As far as what compiler to use that is really a subjective issue, but if you really want C11 support then I can't recommend the Microsoft Visual Studio. This compiler doesn't support C11 and I doubt it ever will. Also Visual Studio is an IDE that comes with a compiler. For Windows I either recommend something like Code::Blocks with gcc or Pelles C. These compilers offer much better C99/C11 support.
Jim
-
Thank you, Jim. I did, by all means, not intend to start a war of factions. :o
I've been talking to some local people, so I will most likely end up with gcc & NetBeans or Code::Blocks.
-
I wouldn't worry too much about choice of platform, tools, or even programming language at the start, as long as you pick something at least somewhat reasonable. Really, your goal should be to learn to program, not to learn any one programming language. Once you know how to program, picking up additional languages is trivial, and you can always change around your tools as appropriate to the job at hand.
Portability is probably the least important at the outset - yes, you should stick to standards where they exist so that you can read others' code, and so that you can ask others for help, but let's be honest - when you are a newbie programmer, there is little you will make that will actually be useful enough to justify porting to other platforms. The main thing you should be looking for out of your first years of programming is to learn your craft; any benefit to anyone besides yourself is purely coincidental.