Anybody want to enlighten me about the difference between cao (I know the "a" should have a tilde, but I can't do it on this keyboard) and cachorro?
I think "cão" refers to any dog (the species). "cachorro" on the other hand is more specific, meaning a pet dog.
Everywhere except Brazil (i.e Portugal,Angola,mozambique,cabo verde,macao,timor leste etc) Cachorro is puppy not Dog. This is also the case in Galician and Spanish.