Difference between these three URL's?
===

Can somebody explain how does it matter to pass different parameters in a url,

e-g
1: www.domain.com/folder1/folder2/file.html?param=9?val=ty5?test
2: www.domain.com/folder1/folder2/file.html#param=93#val=t5y5?test=9
3: www.domain.com/folder1/folder2/file.html&param=9?val=ty5&test=90#poiu

Basically I want to know what do these three characters**(#, &, ?)** do in the url. I have seen them most of the times? can I use some thing other than that 
e-g: www.domain.com/folder1/folder2/file.html*param=9_val+ty5@test
