C é considerado um
de nível médio linguagem de programação. Ele preenche a lacuna entre idiomas de alto e baixo nível.
Embora ofereça recursos como estruturas de dados e funções, facilitando o uso do que a linguagem de montagem (uma linguagem de baixo nível), ele também permite a manipulação direta da memória e a interação de hardware, que são características dos idiomas de baixo nível. Isso oferece aos programadores mais controle sobre os recursos do sistema, mas também o torna mais propenso a erros se não forem tratados com cuidado.