Writing to the console is good if you have a console, and don't need to stop the program and examine the state of memory, files, processes immediately before the problem occurs. Otherwise it's a big fail.
Are we supposed to believe that some people can understand unix, c++ etc but cannot learn/keep a cheatsheet handy so they can employ the ~10 commands needed to use gdb fruitfully?
GDB is not innate.
Therefore GDB has to be learnt.
---
I don't understand your lack of understanding :)
EDIT:
Addendum: Symbolic debuggers like GDB are non-trivial to pick up, is that what you're arguing against?