getch();

This is a discussion on getch(); within the A Brief History of Cprogramming.com forums, part of the Community Boards category; What will getch() return for these keys:
Left Arrow
Right Arrow
Up Arrow
Down Arrow
ESC
F1-12
Tab
Enter
Shift
...

Now when I press an arrow it returns zero the first time I press it, then it returns the letter. WTF? Why does it do this, and can I override it doing that? Or do I need to just tell the user to press left twice or down twice to move.