in reply to String comparison "\x00" vs. "".

My guess is that you have a C background. In Perl, strings are not NUL terminated. And there are only a few scalars that are false. One of your strings isn't one of them.

"\00" is a non-empty string, not containing the character "0". So, in boolean context, it's true. And it's not equal to the empty string.