They are not quite the same, but they are similar.
Two-year-old is an adjective. You can say, two-year-old girl, or two-year-old cat, or two-year-old child. Sometimes, two-year-old is used as a noun on its own, and it that case ("My two-year-old", say), child is usually implied, although it could refer to an animal if the context is clear. It's a compound adjective, with dashes to make it clear it is all one phrase, and it is usually pronounced with the words run together. You might see it without the dashes, and it is usually clear what is meant.
You can't say "My daughter is two-year-old". In that case you say "My daughter is two years old".
I think the reason why it's year, when with dashes, is because the words are run together, and years would be hard to say.
Where is my son?
This question expects that you (the person I'm asking) know the answer. It's a little more complicated than that, though:
- You might not know, but I am implying that you should know.
- You might not know, but I might be a panicked parent who (irrationally) demands answers from you anyway.
- I might be asking a whole group of people. Many of them won't know, but I'm assuming or hoping that someone will.
Do you know where my son is?
This leaves open the possibility that the answer is "no, I don't know". However, if you do know, it is still expected that you will tell me! If I ask this and you just answer "yes", I will think you are being deliberately troublesome.
In other words, this is an indirect way of asking the same thing. Indirect questions are generally more polite in English. That does not mean that "Where is my son?" is rude; it's just not quite as polite.
EDIT: As supercat's comment below so rightly points out, this question of politeness depends a lot on the context. If you should know where my son is (e.g. I've come to pick him up from your house), I would say to you, "Where is my son?" (Okay, I'd probably use his name, but that's beside the point.)
If, instead, I said, "Do you know where my son is?", you would have good reason to think that I was being sarcastic: I am implying that you are negligent, and so you might possibly answer "no" to my question!
Best Answer
These two idiomatic expressions have significantly different implications...
Given the preceding context (I shouldn't have talked back to him), the first example would normally be understood to mean that I shouldn't have wasted my time talking to him. Obviously he only wanted to engage me in debate in hopes of persuading me to change my position, but I was never going to allow that to happen anyway, because my position is "fixed, not up for debate".
The second example would normally be understood to mean that it was socially / politically unwise of me to disagree with him - because he has more power than me, it was dangerous / impertinent of me to challenge him.
EDIT: This question obviously generates a lot of interest, so I thought it might be useful to consider the far less common assertion I know my position, which could be used with either of the above senses...
Personally, I feel that the two different idiomatic meanings aren't entirely arbitrary - the reason they've been assigned this way is at least partly because to stand is normally a voluntary act (often against resistance - consider withstand, stand up to, take a stand). Whereas to be placed [somewhere] is effectively a "passive (servile)" action.
As a class-obsessed Brit, I can't resist adding a link to the classic I know my place comedy sketch (from The Frost Report, 1966, with John Cleese, Ronnie Barker, and Ronnie Corbett), where physical height is amusingly conflated with social status. British humour at its best!