En lenguaje C, los archivos se pueden dividir en dos tipos - y - según su forma de almacenamiento.
El archivo de texto es un tipo de archivo de computadora, un archivo secuencial típico, y su estructura lógica es un archivo de flujo. Los archivos de texto se refieren a archivos almacenados en código ASCII (también llamado modo texto). Para ser más precisos, caracteres como el inglés y los números se almacenan en códigos ASCII, mientras que los caracteres chinos se almacenan en códigos internos. Los archivos de texto no pueden almacenar ninguna otra información excepto la información de caracteres válidos del archivo (incluidos retornos de carro, avances de línea y otra información que puede representarse mediante caracteres ASCII).
Los archivos binarios son archivos que contienen datos o instrucciones de programa escritas en caracteres ASCII y ASCII extendido. En un sentido amplio, los archivos binarios se refieren a archivos que reciben su nombre porque se almacenan en formato binario en dispositivos externos. Los archivos binarios en un sentido estricto se refieren a archivos distintos de los archivos de texto. Un archivo de texto es un archivo de computadora compuesto por varias líneas de caracteres. Los archivos de texto existen en los sistemas informáticos y generalmente se coloca una marca de fin de archivo en la última línea del archivo de texto. La codificación de archivos de texto se basa en caracteres de longitud fija y es relativamente fácil de decodificar; la codificación de archivos binarios es variable y tiene una utilización muy flexible, pero es difícil de decodificar. Diferentes binarios tienen diferentes métodos de decodificación.