Quote Originally Posted by _EAX View Post
so why to read 4 bytes (unsigned long) when char is 1 byte? because if we read a file, everything in it will be character.
You must see a file as a storage of bytes. You can read and write anything from/into it. You could write an integer, for example, in this case, the file is binary.

It was a short answer, because the subject itself is very simple. You must understand the concept first. Ask yourself: how an application that display images would load a file? Is an image file a text? etc...

Hope that helps.