Almost If your reading backwards using this method, you'll need to fseek back 2 bytes not 1. This is because when you do a read, it moves the pointer forward by 1, therefore you must hop 2 back to point at the character you want to read next.Originally posted by shaik786
fseek(fp, -1, SEEK_CUR);
As lambs4 said, that's a nice way of going about it.