Why not have these anyway? Otherwise people will make their own (probably buggy) equivalents.
I'm actually surprised that people aren't aware of them.
The _r versions look perfectly sensible.