When I wrote my first 2d RPG in C++ I started with a stripped down ASCII art version and I learned the basics of everything I needed to in order to create better versions. I would suggest doing something similar to this before jumping into the world of sprites.
My first suggestion is that you pick up a book on C++. I''d say that "Sams Teach Yourself C++ in 21 Days" is a good choice, but alot of people dislike it.
After you have a good understanding of C++ and can make a few text-based games, you''ll have to learn a 2D Graphics API. There are two that I know of: Direct Draw and Simple DirectMedia Layer. Direct Draw is alittle harder than SDL (which is the short way of saying "Simple DirectMedia Layer") and some argue that it is more powerful. I''d say that Simple DirectMedia Layer is just as good as DirectDraw after using both, but I''ll admit to getting faster FPS with DirectDraw.
If you''re new to game programming, I''d say go with SDL. If you''re good, then SDL or DirectDraw; it really doesn''t matter. One thing you should note is that DirectDraw is only for Windows, while SDL is for Windows, Linux, MacOS and a few more.
You can check out SDL at www.libsdl.org, and in my profile signature (which is below) you can find links to SDL tutorials (I suggest you take the C++ tutorials at Cone3D.gamedev.net before going into SDL, unless you are going to read a book or already know C++).