FowlerNollVoVariant1a 64

#include <Windows.h>

UINT64 HashStringFnv1a64W(PWCHAR String)
{
    UINT64 Hash = 0xCBF29CE484222325ULL;

    while (*String)
    {
        Hash ^= (UINT8)*String++;
        Hash *= 0x100000001B3ULL;
    }

    return Hash;
}

INT main(VOID)
{
    WCHAR StringHashExample[] = L"Hash This String";
    UINT64 Hash = 0;

    Hash = HashStringFnv1a64W(StringHashExample);

    return ERROR_SUCCESS;
}

Last updated