in Windows, running tracert x.x.x.x from your pc, your pc sends out a ping x.x.x.x echo request with TTL=1, this packet goes to the router in your pc's routing table, usually it is the default gateway. you default gateway would return an ICMP reply "TTL expired" so your pc know the IP of the first router it has reached on the way to host x.x.x.x. then your pc sends ping x.x.x.x with TTL=2. This time the first router on the way to x.x.x.x will simply pass it to send router according to its routing table. The second will return ICMP TTL exceeded packets you now you know the IP addr of second router. this goes on until you reach the destination x.x.x.x, by then it returns ICMP echo reply. so you when see *, say on 3rd line, that means your pc sent a ping with TTL=3, it's expecting a TTL exceeded packet but it never receives it. so this is simply the 3rd router does not return such packet. but the router is still there and it would pass the ping to next router if TTL were larger. the next router may return TTL exceeded so you might get some number on next line.
If you tracert to some non-existing network you would get a dest. net unreachable. if net is good but host is down, you get host unreachable. But you will get a few lines of numbers or *'s because routers always have a default route to send the packet if it does not know how to route a packet.
this would be hard for you to understand if you do not know much about internetworking