Você está na página 1de 10

Primeiro programa em C com o Dev-C++

Bem-vindo ao seu primeiro programa em linguagem C no Dev-C++.

Instalação do Dev-C++
O Dev-C++ é um ambiente de programação (IDE - sigla em inglês que significa
Ambiente Integrado de Desenvolvimento), ele torna a atividade de programar mais
simples. Um ambiente de programação é um programa que se integra com diversos
outros programas necessários para o desenvolvimento de programas. Ele é constituído
de um editor de texto inteligente que reconhece elementos da linguagem de
programação e, às vezes, contem auxílios para automatizar a escrita de códigos muito
usados. Um compilador para compilar o arquivo com o código fonte e gerar um arquivo
com o programa executável. No caso do Dev-C++, o compilador pode ser um pré-
instalado ou o MinGW GCC. Um depurador de programas, em inglês, debugger, que
serve para encontrar erros de lógica nos programas. No caso do Dev-C++ é usado o
GDB. Todas estas ferramentas/programas são livres e podem ser obtidas na Internet sem
custos.

Existem muitos outros ambientes de programação disponíveis pela Internet, alguns são
de código aberto e livres e outros são comerciais. Um ambiente muito interessante é o
Eclipse que serve para muitas linguagens e outras aplicações. Alguns IDEs não são de
código aberto, mas livres até certo ponto, procure na Microsoft e na Borland exemplos
de compiladores/ambientes de programação livres. O Dev-C++ é um produto
razoalvelmente popular, o que justificou a sua escolha. Mas, ele não tem sido atualizado
já há algum tempo e alguns internautas sugerem o uso do wxDev-C++ no lugar dele.
Além de mais atual, o wxDev-C++ procura oferecer uma programação visual. Isto
facilita a programação de aplicações para sistemas de janelas como o MS Windows.
Como este tipo de programação é muito complexo para ser abordado num primeiro
curso de programação vamos continuar com o Dev-C++.

Baixe o arquivo a partir do site da Bloodshed. Certifique-se de escolher a versão


completa com o compilador caso você já não tenha um compilador instalado.

Figura 1 - Escolha a opção com o compilador, se você já não tiver um instalado.

Ao executar o Dev-C++ pela primeira vez, é conveniente ajustar sua aparência e a


linguagem default que será usada nos programas. Para que a ele tenha a aparência
abaixo:
Figura 2 - Topo da janela do Dev-C++ já com a aparência nova.

Da barra de menu, selecione Tools->Environment Options, deselecione a opção de usar


C++ como default na primeira ficha e na segunda ficha faça as selecões abaixo:

Figura 3 - Opções do menu Tools->Environment options, segunda aba. Se preferir,


troque também a língua para português brasileiro.

Primeiro programa
Como já é usual desde que o livro "The C Programming Language", de Kerninghan e
Ritchie foi publicado, vamos começar com um programa que imprime a significativa
mensagem Alo, Mamae! na tela de console, janela DOS.

Isto permite introduzir os seguintes conceitos inerentes a programas na linguagem C:


 Um programa em C é apenas um arquivo de texto com instruções/comandos na
linguagem C escritos nele. O editor de texto do IDE ajuda a escrever o código.
Para que o programa seja executado, é necessário gerar um arquivo executável a
partir do código fonte, o texto em C. Este é o trabalho do compilador. O IDE
ajuda a chamar o compilador para os arquivos editados e passa para o
compilador opções adequadas para gerar o código executável. Gerado o arquivo
executável, o programa pode ser rodado. Isto pode ser feito de dentro do Dev-
C++, ou fora. Nós vamos fazê-lo numa janela DOS, pois estaremos criando
programas para o DOS neste início da programação.
 Pré-processador: Antes do arquivo fonte do programa C ser compilado, ele é
pré-processado. Isto é, existem instruções, chamadas de diretivas, para o pré-
processador do C que fazem substituições no texto do arquivo antes dele ser
compilado. No programa aloMamae.c, a diretiva do pré-processador usada é a
#include que como diz o nome inclui um arquivo no lugar da diretiva. No caso,
o arquvo incluido tem o nome stdio.h (standard io header). Este arquivo
cabeçalho (header) tem uma série de códigos necessários para usar a biblioteca
de funções de entrada e saída padrões do C (standard C library). Ele é
necessário, pois iremos usar a função printf() para imprimir.
 Compilador: A linguagem C é compilada, isto significa que os programas
escritos nesta linguagem não podem ser executados diretamente. Antes, eles
precisam ser compilados por um programa chamado compilador. No caso do
Dev-C++, o pode ser um pré-instalado ou o compilador MinGW-GCC. Este é
um compilador baseado no gcc (GNU C Compiler) um compilador de código
aberto muito popular no mundo Unix. Ele inclui o compilador, o pré-
processador, o editor de ligações, as bibliotecas padrões do C e do C++ e os
arquivos cabeçalhos correspondentes, bem como os arquivos cabeçalhos para a
API do MS Windows.
 Biblioteca Padrão do C: A linguagem C é muito simples e sozinha não permite
fazer grande coisa sem muito trabalho. Como este trabalho é repetitivo e pode
ser re-utilizado, temos as bibliotecas do C. As bibliotecas do C fornecem
funções para leitura, escrita de dados em arquivos, terminais de texto, acesso a
dispositivos físicos e lógicos, comunicação de processos, etc. Além da biblioteca
matemática que fornece as funções matemáticas básicas como sin(), log(),
exp(), abs(), etc. que permitem realizar cálculos mais complexos. Estas
bibliotecas de funções são ligadas ao código dos nossos programas C pelo editor
de ligações depois que nosso programa é compilado. O editor de ligações é que
gera o arquivo executável. A descrição que foi dada é simplificada e não
apresenta as bibliotecas dinâmicas que são carregadas durante a execução pelo
sistema operacional, ou algum processo associado.
 Sistema operacional: Os programas executáveis gerados pela compilação
(considerando as 3 fases descritas acima como uma só) são, geralmente,
específicos para cada tipo de sistema operacional. Mesmo que o hardware seja o
mesmo, um programa compilado para rodar no DOS do MS Windows, não vai
rodar no FreeBSD, Linux, OpenBSD, MacIntosh, etc. A não ser que exista um
software simulando o outro ambiente, (virtualização de sistemas
operacionais/plataformas é um assunto muito na moda atualmente, fim da
primeira década do século XXI). O sistema operacional carrega o arquivo do
programa executável na memória primária do computador e coloca-o para rodar.
Terminada a execução do programa, o sistema operacional recupera a área de
memoria para outros programas rodarem.
O código fonte do programa aloMamae.c pode ser encontrado seguindo o link ou
copiado abaixo (o arquivo original contem comentários que você deveria ler):

#include <stdio.h>

int main() {
printf("Alo, Mamae!\n");
return 0;
}

Para testar este programa com o Dev-C++, é conveniente aprender a criar um projeto C
e colocar este código nele.

Antes de começarmos, vamos preparar nosso ambiente de trabalho. É útil criar um


diretório no seu computador para colocar seus programas. Para já irmos nos
familiarizando com a interface de linha, para quem estamos escrevendo os nossos
programas, você deve abrir uma janela DOS e mudar para o volume lógico onde será
criado o seu diretório de trabalho. A figura 4 mostra como isto é feito para o nosso
exemplo.

Figura 4 - Comandos de DOS para criar o diretório de trabalho no volume U:.

Observe que, normalmente, seu computador não tem um volume lógico U: como o meu.
Use o disco, ou o dispositivo que lhe for mais conveniente para trabalhar. Os nomes dos
diretórios sugeridos acima não são obrigatórios.

Agora que os diretórios estão criados, vamos criar um projeto no Dev-C++. Clique no
botão para criar um novo projeto, figura 5 (a). Selecione o tipo de aplicação a ser
desenvolvida, Console Application, a linguagem de programação, C Project, e o nome
do projeto, figura 5 (b). Finalmente, escolha o diretório onde os arquivos do projeto
serão armazenados, aquele que foi criado na figura 4.
(a) Criaçao do projeto.

(b) Escolha do tipo de aplicação (console), linguagem (C) e nome do projeto.


(c) Escolha do diretório do projeto.
Figura 5 - Criação de novo projeto.

O Dev-C++ preenche já um código que normalmente você vai precisar para testar/rodar
o seu programa em consoles do MS Windows. Como indica a figura 6.

Figura 6 - Prenchimento automático do arquivo fonte pelo Dev-C++.

Como já temos nosso código fonte, podemos nos desfazer desde arquivo,
provisoriamente chamado de main.c, vide figuras 7 (a) e (b). Salve o código fonte do
aloMamae.c no diretório aloMamae e adicione este arquivo ao projeto conforme mostra
a figura 7 (c) e (d).
(a) Acione o botão para remover um arquivo do projeto.

(b) Escolha o arquivo a ser removido.

(c) Acione o botão para acrescentar um arquivo ao projeto.


(d) Escolha o arquivo a ser acrescentado.

(e) Escolha do arquivo para ser editado.


Figura 7 - Troca do arquivo fonte.

Ou use o procedimento mais simples de copiar o conteúdo da página do arquivo do seu


navegador, selecione todo o texto automático do main.c e cole por cima o texto
copiado. Em seguida, salve o main.c com o nome aloMamae.c.

Compilação e execução
Agora precisamos compilar este arquivo fonte. Isto pode ser feito clicando no botão de
compilação conforme a figura 8 (a). Durante a compilação, aparece a janela da figura 8
(b). Ao final da compilação, a janela deve estar igual à figura. Em particular, os campos
Errors e Warnings devem estar com o valor 0. Se não, olhe na aba de Log o erro, ou o
aviso, e corrija seu código para eliminá-lo. Feche a janela de compilação. Se você abrir
uma janela do Explorer para o diretório aloMamae, você verá que agora tem um arquivo
aloMamae.exe, resultante da compilação.

(a) Botão para compilar o projeto.

(b) Compilação bem sucedida do projeto.


Figura 8 - Compilação projeto.

Não tente rodar o programa clicando nele, veja a advertência abaixo. Volte para a janela
DOS que você usou para criar os diretórios e execute o programa a partir da linha de
comando como mostra a figura 9.

Figura 9 - Execução do programa.

Advertência: Ao rodar este programa pelo sistema de janelas do MS Windows clicando


no seu icone, você vai fazer com que o MS Windows crie uma janela DOS para rodar o
programa, execute o programa e feche a janela depois que o programa terminou. Na
maioria dos computadores novos, isto se passa tão rápido que você pode nem perceber
que ele rodou. É por esta razão que o Dev-C++ já incluiu no código de novos projetos a
chamada da função system() com o argumento "PAUSE" que provoca uma parada antes
do término do programa para que o usuário do sistema de janelas possa ver o resultado
do programa. Se você quiser, use o system("PAUSE"). Mas lembre-se de contar para o
compilador onde estão as definições necessárias para usar esta função:
Insira um #include <stdlib.h> no início do arquivo fonte, na linha seguinte ao
stdio.h, como o Dev-C++ tinha feito no main.c que eliminamos, vide figura 6 acima.

Você também pode gostar