I wrote a function, Str::Compare, that is basically a strcmp rewritten in another way. While comparing the two function, in a loop repeted 500\'000\'00
Str::Compare
strcmp
I believe most of the standard libraries are written in assembly language. That could be the reason you see the standard library is faster than yours.