They're super neat for first-pass "is this structured or random data" analysis of binary files.
fwrite("Hello, world!\n", 1, 14, stdout)
To answer your question, writing a NUL char to stdout is no problem. Some utilities can actually use it as a delimiter since it’s so uncommon. I think most shells would just print nothing on the screen.