I had my nieces and nephews round today, there's a lot of them and they're very noisy. I supervised them all with the cat and ordered them to stay out of my room so she had somewhere to hide.
I thought the cat had slunk off to sleep somewhere so I went downstairs. A little later on I heard a howl. My 3 year old had gone to stroke her and she'd lashed out and caught her a cracker right by her eye. She was devastated. Although the cat has apparently now said sorry so they're friends again!
Supervising a cat around children constantly is really hard isn't it?! I don't think DD had been particularly rough but I suspect she was right up in her face and she felt backed into a corner and a bit freaked out by everyone. Wish my house was bigger, it might be easier to separate them!
Little ones often won't take a telling on the matter - you have to watch them carefully. The cat was likely just reacting instinctively to a bigger thing that wasn't reading body language and was in her space.
But I bet your 3 year old will be more careful next time? You can build on this positively, not to make her scared of cats but to give them respect and a bit of space.
Best of luck
PS - and do try to find out how the cat said sorry!
Unfortunately I think it often takes something like this for a small child to learn to give them a bit of space. I am generally very careful about supervising her but there was just so much going on. She did try and show me how the cat said sorry, it did something with its paws apparently - there you go, cats know sign language!