I have an size_t
variable nOffset
that holds a number of which I want to find out how many bytes are actually needed to store it. I guess the position of the MSB could also be used? This is my code so far (sizeof(size_t)
is 4):
int nLen = 0;
if (nOffset > 0xFFFFFF)
{
nLen = 4;
}
else if (nOffset > 0xFFFF)
{
nLen = 3;
}
else if (nOffset > 0xFF)
{
nLen = 2;
}
else
{
nLen = 1;
}