To some degree, it's marketing, so you'll see blurring of the lines between products. But in general:
-Cloud: You don't get access to the data center. You may not even know what city the data center is. You access the product through an API (that may be fronted by a control panel, etc.), and you may not get direct OS access, depending on the product. A definition that's increasingly used is that Cloud products are OSSM: On-demand, self-service, scalable, measurable. (https://twitter.com/wescpy/status/10165323856609280)
-Dedicated hosting: You don't get access to the data center, and you may not know exactly where it is. You lease a server (or a VM on a server), they probably put the OS on it for you (sometimes you can provide the OS for them to load, and sometimes you get KVM access to bare hardware where you can load your own OS). Probably the key differentiator is how automated the process is for the provider: As it tends more towards automated OSSM with an API, the provider is more likely to start marketing themselves as a "cloud" provider.
-Colo: They give you a rack with power and a cable or two giving you connectivity. You bring the equipment, and put it in your rack space.