1. For building a website, HTML can get you started. You can use Mirosoft Frontpage or any other HTML editor. There are tons of HTML tutorials available on the internet. Google them. If you want to go a bit deeper, there is Javascript and AJAX, CSS, PHP(or ASP), MySQL etc.
2. Storage is provided by a webhosting company. You can get one from few members here who sell web space. You can also get it for free at
www.x10hosting.com but they may insert forced ads on your pages or may disable some features. You will also need a domain name(such as think.com or about.com). You can't get a domain name free unless its the .co.nr, .co.cc, uni.cc, etc. But such free domain names hardly have any value when compared witrh .com, .net, .org, etc.
I am not sure how useful C++ may be here, save for the possibility that you may be able to learn PHP easily for its syntax similarity. Java is definitely helpful in web programming.