Nem sempre é viável escrever um programa inteiro dentro da função main()
. Muitas vezes, outras funções devem ser utilizadas para, entre outros motivos, evitar repetição de código e facilitar a leitura e a manutenção do código.
As funções são estruturas da linguagem que agrupam um conjunto de comandos. Tais comandos são executados quando a função é chamada. Quando executamos um programa, por exemplo, a primeira função chamada é a main()
.
Podemos dividir o programa em funções e utilizar, por exemplo, o mesmo arquivo que contém a função main()
para escrever o código dessas funções.
No entanto, quando implementamos programas grandes, é comum separar o código em vários arquivos (todos com a extensão .c
), onde cada arquivo implementa um conjunto de funções relacionadas entre si.
Nesses casos, a função main()
deve estar em um único arquivo que, normalmente, se preocupa com a entrada e a saída dos dados enquanto que os outros arquivos implementam funções que serão utilizadas por ele.
Suponha que o arquivo que contém a função main()
seja chamado labXX_main.c
. Suponha um outro arquivo, labXX.c
, que contém funções úteis ao arquivo labXX_main.c
.
Para compilar um código organizado dessa forma no terminal, basta passar todos os arquivos na linha de comando para o compilador:
gcc -o labXX labXX.c labXX_main.c
gerando o executável labXX
.
No Code::Blocks, também é possível compilar um código organizado da forma como descrita acima. Para isso, precisamos criar um projeto.
Abra o Code::Blocks e execute os passos a seguir:
Se os arquivos com os quais você vai trabalhar já existem, por conveniência, você pode salvá-los no mesmo diretório labXX
em que o projeto foi criado. Suponha que salvamos os dois arquivos labXX_main.c
e labXX.c
nesse diretório.
Com o projeto criado:
labXX_main.c
e labXX.c
, selecione-os (você pode selecionar ambos de uma vez pressionando a tecla “Ctrl”) e clique em “Abrir” ou “Open”.Você também pode adicionar arquivos em branco a um projeto.
Com o projeto criado:
A figura a seguir indica que o projeto labXX
(em negrito logo abaixo de “Workspace”) possui três arquivos. Dois deles (labXX_main.c
e labXX.c
) já existiam e o terceiro (labXX_em_branco.c
) está vazio.