1. Pointers allow accessing and modifying data in memory by storing the memory address of another variable. Pointers must be declared with an asterisk and initialized by assigning the address of the variable.
2. Files can be opened, read from, written to, and closed using standard library functions like fopen(), fread(), fwrite(), and fclose(). Files can be accessed sequentially from beginning to end or randomly by seeking to a specific location.
3. File I/O functions allow reading and writing text and binary data to files, getting file information, and copying or merging file contents. Pointers to open file streams are used to pass file handles to these functions.