Um arquivo de cabeçalho C é um componente fundamental na programação em C e C++, tipicamente identificado pela extensão .h. Ele serve como um repositório para declarações, incluindo protótipos de funções, definições de macros, definições de tipos e variáveis globais que precisam ser compartilhadas entre múltiplos arquivos de código-fonte. Ao utilizar arquivos de cabeçalho, os desenvolvedores podem manter uma base de código modular, permitindo que diferentes partes de um programa interajam entre si sem a necessidade de redefinir estruturas ou assinaturas de funções repetidamente. Quando um arquivo de origem inclui um arquivo de cabeçalho usando a diretiva de pré-processador #include, o compilador efetivamente copia o conteúdo do cabeçalho para o arquivo de origem antes que o processo de compilação comece. Este mecanismo é essencial para gerenciar projetos de software complexos, garantindo a consistência nas estruturas de dados e facilitando o uso de bibliotecas. Arquivos de cabeçalho frequentemente empregam 'include guards' — diretivas de pré-processador como #ifndef, #define e #endif — para evitar que o mesmo arquivo seja incluído múltiplas vezes, o que causaria erros de compilação devido à redefinição. Eles são a espinha dorsal da arquitetura de software modular na família de linguagens C.