I am quite confused about
1) the difference between a GUI and API
2) Where to learn to make my own GUI/API
3) What all the premade GUI/API’s there are
My goal is to learn how to make actual programs instead of just using console and yes, I would like a solution for doing this on Mac OS X (preferably cross-platform). Please help! IF you are confused by what I need to know, leave a comment.
P.S. How would I turn a console game into an actual 2D game (I know its not easy).
GUI stands for Graphical User Interface, while API stands for Application Programming Interface.
It is common in programming terminology reusable libraries are called as API. I assume by GUI/API you mean an API that allows you to create GUI based applications. For example Swing is Java API for creating GUI.
For C++ there are many libraries which allow you to make GUI applications. Most notable, open source and cross platforms ones are:
GTK+ http://www.gtk.org/
Qt http://qt-project.org
wxWidgets http://www.wxwidgets.org/
There are quite a few others.
If you want to create your own GUI API which is cross platform, then you should study the above libraries. But let me warn you, creating a UI library is a huge task!