i've been learning c++ for a while now. I know enough c++ to make the program I want, and I know enough SDL to make the interface. Should I learn OpenGL or DirectX and Win32 instead of SDL?

I want to make a simple program that just deletes certain files. But i want to give it an interface so I need to know some API's.

also this has been bothering me for a while. cin is a variable that stores whatever is in the input stream right? then how come the program doesn't need more memory every time you type something?