That would work for sure when you know your number will be less then 255.
I needed to save the number like 55254, or sometimes it's a string literal like and API end point, a URL or an access key.
First I convert the value to be saved into a char array via something like
var s_len = sprintf( data, "%d", some_int );
I have a function that is called with write_ee( start_addr, data, length );
The function write_ee writes the value of length to the start address first. In this example it would write 0x05.
Next the write_ee function writes the contents of data to the start address + 1 byte;
To read back the data a read_ee function first reads 1 byte at the start address which will return 0x05.
Then read_ee reads into a char array the contents of the starting address + 1 byte for the length of 0x05
In your example if I was saving the value of 99 it would have a length of 2 since it's saved as a string.