Criando e compilando seu primeiro programa na Linguagem C

No artigo passado do curso C Progressivo você baixou e instalou a IDE Clode::Blocks, que é o programa necessário (mais recomendado e melhor que o Dev-C++) para iniciar seus programas na linguagem C.

Ao final desse artigo, você irá criar seu primeiro programa na linguagem C e será, oficialmente, um programador C :)

Como criar e compilar um programa em linguagem C

Passo 1: Inicie um novo arquivo

Dependendo da linguagem em que você instalou o Code::Blocks
Vá em: File -> New -> Empty File
Ou em: Arquivo -> Novo -> Arquivo vazio

Note que apareceu uma tela em branco, que é onde você vai digitar seu código.
Não digite nada ainda. Você até pode, mas é um erro fazer isso, o ideal é salvar o arquivo primeiro.
Vou explicar o motivo no passo 2.

Passo 2: Salve seu arquivo com a extensão .c

O Code::Blocks não serve somente para a linguagem C, serve para a linguagem C++ também.
Como você vai programar em C, seus arquivos devem ter a extensão '.c'.
Clique no disquete, símbolo universal de Salvar e escolha um nome e coloque a extensão .c, por exemplo: programa1.c

Após salvo, o Code::Blocks vai indentar automaticamente o seu código, ou seja, vai organizar ele e escrever algumas coisas por você, além de mostrar algumas coisas com cores diferentes, o que facilita e deixa o código mais organizado, coisa que não aconteceria caso não tivesse salvo antes o programa (você entenderá melhor isso no próximo passo).

Passo 3: Programando

Agora vamos programar! Ou seja, escrever o código!
Escreva EXATAMENTE isso:

#include <stdio.h>

int main(void)
{
    printf("Meu primeiro programa - C Progressivo!\n");
    return 0;
}


Passo 4: Compilando e Rodando

Note no canto superior esquerdo, os seguintes botões:

Aprenda a criar e compilar seu primeiro programa na Linguagem C.

O primeiro é o 'Build', o segundo é o 'Run' e o terceiro faz os dois 'Build and Run'.
Clique no terceiro, que ele irá construir (compilar) e executar seu programa, ou aperte F9.

Você obterá a seguinte tela:


E eis o seu programa na Linguagem C.
No próximo artigo explicarei, detalhadamente, o que significa cada parte do código que você escreveu e executou.


Passo 5: Caso tenha obtido erros

Caso não tenha conseguido rodar seu programa, provavelmente deve estar usando outra IDE que não seja o Code::Blocks, então experimente trocar a linha:

main()

Por
int main()

Ou
void main()

Se os erros persistirem, leia a mensagem de erro. Muito provavelmente você digitou algo errado.
Tem que ser exatamente aquilo.
Em C, 'main' é diferente de 'Main'. Ou seja, C é case sensitive.


68 comentários:

david disse...

estou com um pequeno problema no passo 4: compilando e rodando, quando aperto 'build and run' não acontece nada, nem erro. ajuda!

Apostila C Progressivo disse...

Setting -> Compiler and debugger settings -> Global compiler settings -> Toolchain executables -> Button "Auto-detect"

Raphael Dutra Sá Gonçalves disse...

Bom dia amigo, está havendo uma divergência quanto ao resultado do passo 4. Ao clicar em build and run, o terminal abre, porém com o seguinte resultado:

Last login: Sun Jul 7 10:28:25 on ttys000
<phaeldugon$ /Users/raphaeldugon/Documents/Code Blocks/aula1
-bash: /Users/raphaeldugon/Documents/Code: No such file or directory
MacBook-Pro-de-Raphael:~ raphaeldugon$

Note que eu estou usando Code:Blocks for Mac OS X, será que é por isso?
Obrigado

Apostila C Progressivo disse...

Olá Raphael,

Demos uma pesquisada aqui, e o problema pode estar no espaço em branco do diretório "Code Block".

Por favor, renomeie a pasta pra outra coisa, como "CodeBlock" e evite espaços.

Se der certo, avisa aí que colocaremos no tutorial pra ajudar outras pessoas.

Anônimo disse...

Eu estou colocando o programa pra rodar e não tá dando certo. Tentei fazer o que você disse ali em cima: "Setting -> Compiler and debugger settings -> Global compiler settings -> Toolchain executables -> Button "Auto-detect"", mas não deu certo. Apareceu uma mensagem dizendo assim: "Can't find compiler executable in your configured search path's for GNU GCC compiler"
O que pode ser?
Obrigada :D

Aparecido Barbosa disse...

inclua o cabeçalho conio.h


antes de return 0 ; inclua a função getch();

Apostila de C disse...

Olá Aparecido,

Indicamos o uso do Code::Blocks justamente por ele 'congelar' a tela ao final da execução, não sendo necessário usar algumas 'gambiarras', que não são recomendadas.

A conio.h, por exemplo, era muita usada no MS-DOS, não faz parte da Biblioteca Padrão, nem é definida pela POSIX (ou seja, não é nada portável para outras plataformas).

É sempre interessante usar funções que existem na bibioteca padrão do C.

Ao longo do curso ensinamos maneiras de contornar esses problemas.

Anônimo disse...

Olá,Estou começando a estudar programaçaoo agora e estou com problema na hora da execução, Eu estou colocando o programa pra rodar e não tá dando certo. Tentei fazer o que você disse ali em cima: "Setting -> Compiler and debugger settings -> Global compiler settings -> Toolchain executables -> Button "Auto-detect"", mas não deu certo. Apareceu uma mensagem dizendo assim: "Can't find compiler executable in your configured search path's for GNU GCC compiler"...
Desde ja agradeço a resposta...

Anônimo disse...

Olá...
Estou tendo o mesmo problema que o Anonimo ae de cima tem...
Ja fiz todos as dicas dadas acima e nada...

Apostila C Progressivo disse...

Vocês baixaram mesmo a versão mais atual e correta pro sistema operacional ?
http://www.codeblocks.org/downloads/binaries

Diogo Noda disse...

Cara, valeu pelo curso, tá bem estruturado e bem explicado!!
Também estou com o problema dos "Anônimos" acima.
O arquivo que baixei foi o "codeblocks-12.11-setup.exe"
OS: Windows 8

Diogo Noda disse...

Cara, resolvi o problema... o primeiro link codeblocks-12.11-setup.exe) não instala o GNU compiler.
Pra quem não recebeu resposta do Code::Blocks, desinstale o programa e baixe o codeblocks-12.11mingw-setup.exe!!!

Parabéns pelo site!!!

Unknown disse...

Se não estiver conseguindo DE JEITO NENHUM rodar o programinha, siga o que o amigo Diogo Noda disse aqui acima: Desinstale o Code::Blocks q vc tem, baixe esse arquivo no site:
codeblocks-12.11mingw-setup.exe
e instale-o.
Feito isso, aí sim você vai seguir os passos orientados pela equipe do C Progressivo:
"Setting -> Compiler and debugger settings -> Global compiler settings -> Toolchain executables -> Button "Auto-detect""
Faça a programação de novo, compile, rode e comemore!!!!

Anônimo disse...

Cara,eu me enrolei todo na página do do donwload porque eu já escolhi a minha plataforma mas não sei qual opção eu clico tem muitas podem me explicar detalhadamante? e outra,vc vc disse q o compiilador não precisa ser baixado mas como,??

Apostila C Progressivo disse...

Bom, não dá pra dizer isso pois precisaríamos saber o sistema operacional e a versão, de cada um de vocês.

Mas por via das dúvidas, cliquem no que tiver tamanho maior, pois com certeza ele estará mais completo.

Anônimo disse...

vcs têm facebook?Quero curtir a página

Tutorial C Progressivo disse...

Temos sim, aqui mesmo na página tem uma caixa de nossa page no facebook, lá em cima no lado direito!

victor medzer disse...

cara, estou tendo problemas bem no início pois,não estou conseguindo salvar o arquivo e digitar o testo, ja tentei muita coisa mas não consegui. ficaria agradecido se você me ajudasse !

Apostila C Progressivo disse...

Olá Victor,

O que está acontecendo quando tenta salvar e não consegue?
Está tentando salvar com que nome?
Qual a mensagem de erro que aparece quando não dá pra salvar?

Anônimo disse...

Instalei o codeblocks-12.11mingw-setup.exe
Mas fica dizendo que não acha o Compiler, o que deve ficar quando aperto Settings - Compiler - SELECTED COMPILER ?????

Anônimo disse...

Resolvi o problema de compilação no Linux Ubuntu que eu uso assim:

1) Instalei o CodeBlocks 10.5

2) Segui os procedimentos para criar um projeto ou arquivo

3) Configurei ele o CodeBlocks seguindo as etapas abaixo:

Settinggs - Compiler and debugger -

Global compiler settings -> no selected compiler tem que escolher: GNU GCC Compiler

Batch builds -> habilitar Compiler e Debugger, os outros ficam desabilitados

E da OK

4) Depois, Ctrl + Alt + T (para abrir o terminal do Ubuntu). Digite o código:

sudo apt-get install build-essential

Ele pergunta se quer realmente baixar, coloque S e dê ENTER

Prontinho. Agora roda corretamente.

Wallysson Santana disse...

O último procedimento via terminal resolveu aqui comigo. Muito obrigado!

Anônimo disse...

o meu é para Linux,alguém, pode me ensinar como baixá-lo,em q botões clico quando baixá-lo??

Anônimo disse...

eu tenho a distro fedora e fiz assim com a juda destes 2 saites.
pode ser que ajude a mais algem

http://wiki.codeblocks.org/index.php?title=Installing_Code::Blocks_nightly_build_on_Fedora

http://www.codeincodeblock.com/2012/11/start-learning-c-on-linux-fedora.html

saviomb disse...

Primeiro queria tirar uma duvida. Na parte de salvar ele não aparece a extensão .c, mas sim C/CC ++. Isso tem algum problema. 2- Na hora que eu estou fando o
Setting -> Compiler and debugger settings -> Global compiler settings -> Toolchain executables -> Button "Auto-detect" ele aparece um erro dizendo:
Cloud not auto-detect installation path of "Borland C ++ Compiler (5.5,5.82)"...
Do you want to use this compiler's default installation directory.
Aparece a opção de apertar sim ou não. Já apartei as duas mas não deu em nada. Já tentei trocar o compiler para outro na mesma seção mas deu em nada também. Resumindo, eu aperto o botão e não faz nada. 3 e ultimo, como faz para por o programa em português ( vocês não são responsáveis por ele, mas...) e também você acha melhor deixar ele em English ou português mesmo?

saviomb disse...

você poderia me ajudar. Esta aparecendo isso:
C:\Users\savio\Documents\CodeBlock\arquivo.c -o C:\Users\savio\Documents\CodeBlock\arquivo.o
mingw32-gcc.exe: error: -pg and -fomit-frame-pointer are incompatible

Anônimo disse...

Primeiro parabéns pelo ótimo material disponibilizado. Minha dúvida é: quando mando "build and run", meu antivirus acusa um Malware e bloqueia não rodando o programa. Informa a seguinte infecção: Win32:Malware-gen. Posso ignorar esse aviso?

Guilherme Santos disse...

Na linha "int main(void)" eu entendi perfeitamente o "main", mas o que significa o int e o void ?

Apostila C Progressivo disse...

Toda função deve ter um tipo de retorno.

O 'int' quer dizer que a função deve obrigatoriamente retornar um inteiro.
Ao fim vemos que retorna 0 (return 0;), um símbolo universal pra dizer que saiu tudo ok.

'void' quer dizer que aquela função não vai receber nenhum argumento, nenhuma informação.

Se a função fosse: int main(int n), queria dizer que ela deveria receber um inteiro 'n'.

Irá entender e criar suas funções, quando chegar na seção de Funções da apostila :)

Kotarō Fūma disse...

No butão do Auto-detect em baixo fica frase em vermelho.

"NOTE: All programs below,must exist either in the "bin" sub-directory of this path or in any of the "Additional" ".



Meu sistema windows 8 64 bits

OrionAteuAnonymous EcoSocialista disse...

No meu eu baixei separado o gcc compiler e gdb debbuger . O unico problema é que quando tento botar build and run dá uma mensagem dizendo :It seems that this project has not been built yet.Do you want to build it now? e clico "sim" mas ai a mensagem volta e apertei no build e a mensagem voltou e quando apertei "não", pareceu que deu certo e funcionou, a cmd abriu e veu project1.exe sóque a mensagem nã apareceu e só os dados do programa apareceram. O que é que pode ser se falou que não tinha nenhum erro?

Anônimo disse...

Uso o Ubuntu 13.10, instalei o Code::Blocks a partir da Central de Programas do Ubuntu e tudo correu direitinho na execução do programa1.c!!!

Paulo Tokida disse...

Olá boa noite, o meu rodo redondinho valeu estou gostando e muito impol gado,obrigado.

Anônimo disse...

Quanto ao problema de compilação e execução não tive muito problema, resolvi sozinho, mas o fato é que se rodarmos o executável fora do debugger ele fecha num flash e para isso editei o código de forma que ficasse desta maneira:

#include
#include

int main(void)
{
printf("Meu primeiro programa - C Progressivo!\n");
getch();
return 0;
}

Assim, rodei ele no meu windows normalmente.

Anônimo disse...

Olá! quando apero o botão, no log lá em baixo aparece isso:

mingw32-gcc.exe -c "C:\Documents and Settings\edson.alves\Desktop\Edson\programa1.c" -o "C:\Documents and Settings\edson.alves\Desktop\Edson\programa1.o"


mingw32-g++.exe -o "C:\Documents and Settings\edson.alves\Desktop\Edson\programa1.exe" "C:\Documents and Settings\edson.alves\Desktop\Edson\programa1.o"


Process terminated with status 0 (0 minute(s), 16 second(s))
0 error(s), 0 warning(s) (0 minute(s), 16 second(s))

Porem a janela não abre...

Anônimo disse...

então cara quando vou copilar o primeiro programa o anti virus atua e não me deixa criar, eu uso o avast

Jucimara Rodrigues -- Jucinha disse...

Ola, tudo bem? Oh esse curso e melhor de todos estou acompanhando agora e amando, mas tenho uma duvida besta =/, quando vc diz no próximo artigo explico todo o código, aonde que eu encontro a continuação?

Apostila C Progressivo disse...

Oi Jucimara, tudo bem?

Note que lá em cima, no menu, tem uma seção chamada "Índice".
Lá é o sumário oficial do curso, com os tutoriais que você deve ler, e na sequência correta.

É uma apostila online, como se fossem capítulos de um livro, a ordem desses capítulos está no Índice.

Rogério cruz disse...

pessoal usa o DEV-c++ , e pode seguir os passos normalmente ele é melhor q o CodeBlocks !!! vlw

Apostila C Progressivo disse...

Rogério,

Em nenhum momento foi dito que esse código não funcionaria, e até óbvio que sim, pois é o programa mais simples de ser feito.

Mas ao passo que os programas vão ficando complexos, o Dev apresenta muitos problemas, deixa passar muitos erros e e outros detalhes por estar totalmente desatualizado, é bem comum ter uma série de problemas nele (óbvio que não vai ter fazendo um "Hello World"), que não ocorre em outras IDE's.

Até retomaram o projeto há um tempo, mas as pessoas ainda continuam a usar a versão bem antiga, na época que começaram a indicar ele (há mais de 10 anos), totalmente arcaica.

O Code::Blocks é atualizando com frequência, é um projeto livre e aberto, além de ser multi-plataforma (roda em vários Sistemas Operacionais), aceita plugins (e há muitos pela rede), identa o código, tem um syntax highliter bem melhor, etc etc etc.

Se alguém quiser adicionar informações sobre as novas atualizações do Dev, fiquem à vontade para contribuir.

Anônimo disse...

Gostaria de agradecer, sou iniciante no curso de ciência da computação, e vocês tem me ajudado muito, super recomendo, e vou divulgar entre os alunos novos tbm.

Obrigado.

Anônimo disse...

Pessoal, boa noite!
A dica de desinstalar o Code::Blocks existente e instalar novamente a versão codeblocks-13.12mingw-setup.exe (essa era a versão disponível), definitivamente FUNCIONOU!!
Agora consigo rodar meus primeiros programinhas! Muito obrigado pela ajuda!

Anônimo disse...

Olá. To adorando o curso. Sempre tive medo de linguagens como c, por achar ser muito difícil.Aí me aventurava em uma mais fácil e acabava enjoando no meio dos estudos. Sei lá, coisas fáceis de mais não tem graça. Parabéns pela maneira simples e objetiva de ensinar, e pela iniciativa. Vou ir até o fim do curso sem dúvidas, e espero conseguir.

wemidio disse...

Gostei muito da iniciativa!
Mas neste primeiro programa quando aperto o botão para compilar e executar, na aba Build log, aparece:

Process terminated with status 127 (0 minutes, 0 seconds) 0 errors, 0 warnings

Porém não aparece a janela com a excecução do programa.

Wesley Marques disse...

"Caras", Valeu Tutorial muito bem feito, e não há erros se seguido passo a passo como explicado, agradeço desde já.

Ernandes disse...

Muito bom, gostei... fiz meu primeiro program.

Ricardo Oliveira disse...

Olá,

Comecei o curso mas estou com um problema. Estou rodando o codeblocks no Linux mint e quando vou compilar e executar o programa ele dá a seguinte mensagem:

||=== PrimeiroProg, Debug ===|
/home/ricardo/Documentos/Programas C/PrimeiroProg/main.c|1|fatal error: stdio.h: Arquivo ou diretório não encontrado|
||=== Build finished: 1 errors, 0 warnings (0 minutes, 0 seconds) ===|


Saberia dizer o motivo?

Laís Farias disse...

Olá! Baixei a versão mais recente pra windows 13.12 com a extensão mingw-setup, mas o programa não roda e o codeBlock não aponta erro. Tentei as soluções já citadas, mas não obti nenhum retorno.

Anônimo disse...

Olá, amigo... Consegui executar o CodeBlock, mas ele abre a janela preta e não fecha de modo algum. Sempre preciso reiniciar o pc.. teria como me ajudar a solucionar esse problema?

Anônimo disse...

Oi, eu abri e fiz tudo certinho, quando clico em compilar e executar não acontece nada.
Qual é o problema?

Anônimo disse...

estou com o mesmo problema da janela preta que não fecha de jeito nenhum.
E não apareceu a mensagem...

Blog do Latini disse...

#latini
olá tentei fazer a programação e as alterações mas dá a mesma coisa acima citado não aparece nada de erro e nem a tela que deveria aparecer meu Win é o 7 64Bits



Edinho disse...

não consigo rodar na versão 10.5 e ai tentei baixar a versão 13.12 mas não consigo.o que fazer?

Anônimo disse...

Estou com a versão 13.12 e estou com o problema na hora de compilar.
Já seguir os passos do auto detect e nada ... !

alguém poderia ajudaR?

Quando clico em build and run, aparece o seguinte:

"meuprojeto - Debug": The compiler's setup (GNU GCC Compiler) is invalid, so Code::Blocks cannot find/run the compiler.
Probably the toolchain path within the compiler options is not setup correctly?! (Do you have a compiler installed?)
Goto "Settings->Compiler...->Global compiler settings->GNU GCC Compiler->Toolchain executables" and fix the compiler's setup.
Skipping...
Nothing to be done (all items are up-to-date).

Target uses an invalid compiler; run aborted

Anônimo disse...

Olá, um problema está acontecendo comigo. Quando abro o programa, ele só "pisca", ou seja, fecha denovo. para corrigir isso, tenho que fazer:

#include

int main(void)
{
printf("Meu primeiro programa - C Progressivo!\n");
system("pause");
}

Como consertar isso,para não ter que por Pause no final?

Anônimo disse...

Este site para poder aprender linguagem C é muito legal... muito bem explicado para iniciantes assim como eu ;)
Eu estava com problema para compilar com Windows 8.1, ele não compilava e nem aparecia a janela de execução do programa. Logo, eu desinstalei o programa recomendado pelo site e reinstalei, só que com um diferencial. Quando termina de instalar abre uma janela pedindo para abrir de cara com o programa, simplesmente não abri e quando fui compilar e executar deu tudo certo :D

Alessandro disse...

seguindo os passos do comentário anterior fiz um teste no ubuntu 14.04_lts e no CodeBlocks 13.12,lembrando que o codeBlocks foi instalado via central de programas do Ubuntu.


1) Instalei o CodeBlocks 10.5

2) Segui os procedimentos para criar um projeto ou arquivo

3) Configurei ele o CodeBlocks seguindo as etapas abaixo:

Settinggs - Compiler and debugger -

Global compiler settings -> no selected compiler tem que escolher: GNU GCC Compiler

Batch builds -> habilitar Compiler e Debugger, os outros ficam desabilitados

E da OK

4) Depois, Ctrl + Alt + T (para abrir o terminal do Ubuntu). Digite o código:

sudo apt-get install build-essential

Ele pergunta se quer realmente baixar, coloque S e dê ENTER

Unknown disse...

Muito obrigada por essa iniciativa de vocês. Achei hoje este material e irei até o fim e irei perturbá-los muito hahahaha. Beijos e excelente 2015 para todos!
By Juliana Luz.

Anônimo disse...

vi que muita gente ta com problema mesmo instalando a versao mais pesada o compilador nao aparece e sim a mensagem:
can't find compiler executable in your search path (GNU GCC compiler)
vi uma solução fácil que funcionou de primeira comigo.
ir na aba settings -> compiler e dar um reset defalts.
espero que ajude os amigos aí...
mamp.

Anônimo disse...

o meu code blocks tive que instalar o compilador manualmente e agora ele retorna varios valores menos zero e não roda nem o programa padrão de demostração como deveria porque??alguem pode me ajuda,acredito que seja um problema no meu computador

adriano disse...

código funcionando perfeitamente amigo valeu!!

Anônimo disse...

Instalei o ProCompiler codeblocks-13.12mingw-setup.exe e deu certo!

Priscila Elias Correa disse...

Ola boa noite!!!
Estou com um codigo, para fazer conversao de Celsius para Fahrenheit, onde nao aprendemos ainda nada alem de printf e scanf, a principio tentei fazer sozinha, como nao consegui, acabei copiando de outra pessoa, porem no dela roda normalmente, mas no meu nao da erro e o windows nao executa, diz q da erro e que vai fechar o programa....preciso de ajuda.

Anônimo disse...

Instalei o CODE BLOCKS 13.12 e o primeiro programa que vc pede para fazer eu digito exatamente como está pedindo, mas sempre aparece 5 erros na linha 4, já revisei várias vezes, sou leigo no assunto, se poder me dar uma dica...

Aline Sh disse...

Eu fiz, deu certo, mas o programa só executa dentro do Code::Blocks. Será que tem como eu abrir o programa pelo seu próprio executável? Pq quando eu tento abrir pelo executável que foi criado ele só pisca a janela e não abre. Só funciona quando eu to no Code::Blocks e com os códigos escritos.

Júlio César Coelho disse...

Quem for instalar no Ubuntu, procure o CodeBlocks direto no Ubuntu Software Center (Central de Programas, já vem com o Ubuntu nativamente). ANTES DE CLICAR EM INSTALAR, marque as caixas de add-ons opcionais (logo abaixo das informações), pois isso fará com que o Debugger e o Compilador GNU (GCC) sejam instalados juntos com o CodeBlocks.

Na hora de iniciar, ele rodará o Auto-detect, sem necessidade de ir em Configurações depois. Listará o GCC instalado e aí é só selecionar e dar OK.

lilith disse...

Vcs me ajudaram muito com esse post para arrumar a msg de erro!!! Muito obrigada!! adoreiii

Ana Coutinho disse...

Boa noite!
O meu deu certinho!!!!!

Gostou desse tutorial de C?
Sabia que o acervo do portal C Progressivo é o mesmo, ou maior que, de um livro ou curso presencial?
E o melhor: totalmente gratuito.

Mas para nosso projeto se manter é preciso divulgação.
Para isso, basta curtir nossa página no Facebook e/ou clicar no botão +1 do Google.
Contamos e precisamos de seu apoio.