Macro backed by fprintf(stderr, ..) since stdout is buffered.
Generally avoiding C unless something specific and small absolutely requires performance (rather than premature optimization), because maintainability, safety, and velocity tend to be better in higher-level languages.