I don’t see any reason to prefer bzero
over memset
.
memset
is a standard C function while bzero
has never been a C standard function. The rationale is probably because you can achieve exactly the same functionality using memset
function.
Now regarding efficiency, compilers like gcc
use builtin implementations for memset
which switch to a particular implementation when a constant 0
is detected. Same for glibc
when builtins are disabled.