TDP это termal design power, параметр для разработчиков систем охлаждения. Он конечно был как-то логически связан с потреблением процессора в момент его разработки/тестирования/маркировки, но уж точно не в момент установки патча на винду.
Это слишком неопределённое гадание. Но, раз уж это чистый си, то возможно что у них практикуется выделять память под максимальный размер без завершающего нуля. Если значение короче, то ноль на месте, если максимальное, то неявно. Тогда надо указывать некую константу, максимальный размер пароля.
не длину передаваемого авторизующимся юзером, а установленного пароля.
Правильнее:
1. длину не передаваемого авторизующимся юзером, а установленного пароля плюс один.
2. длину передаваемого авторизующимся юзером пароля плюс один.
Порядок вычисления операндов оператора не определён. Изменение переменной и её использование в одном выражении.
2. Писать inline при реализации метода внутри объявления класса не обязательно.
int64 и наносекунды отлично подходят друг к другу. Во многих реализациях c++11 классы std::steady_clock и std::system_clock реализованы именно так.
1. длину не передаваемого авторизующимся юзером, а установленного пароля плюс один.
2. длину передаваемого авторизующимся юзером пароля плюс один.
Автор попытался исправить ошибку и сделал свою.