Vamos Programar? – Introdução à Programação #6
"Hello World!"
O mundo está constantemente a evoluir: desde o mais pequeno inseto à espécie Humana. Evolução, mudança, futuro - são das palavras que mais são ouvidas atualmente.
A tecnologia tem revolucionado o mundo das mais diversas formas. Se quer entrar no mundo da tecnologia e deixar a sua marca, pode começar aqui.
Na semana passada, falámos sobre a instalação de um IDE, sendo que o IDE que foi recomendado foi o Netbeans. A partir de agora, algumas das partes que serão aqui visualizadas terão o Netbeans na sua base, como, por exemplo, a forma de executar um programa.
A utilização de um IDE poderá esconder diversos conceitos aos mais iniciantes porém, nós optámos por seguir esse caminho visto que existem muitos sistemas operativos e teríamos que dar instruções para vários SO ao mesmo tempo.
Visualize este vídeo no YouTube
Como seria o mundo da programação sem o famoso "Hello World"? É uma tradição o primeiro programa criado por alguém imprimir a mensagem "Hello World" no ecrã.
Antes de escrever qualquer coisa em C, precisa criar um projeto. Para isso, abra o Netbeans e clique File → New Project. No ecrã que se abriu escolha C/C++ Application.
De seguida clique em Next. Na nova janela, escolha o nome do projeto - que eu coloquei "HelloWorld" - e onde vai guardar os ficheiros do projeto.
As restantes definições podem ficar como estão. Agora, deve ver uma disposição de ficheiros parecida à seguinte:
De momento, deve focar-se na pasta Source Files que é a que contém o código-fonte da aplicação. Abra o ficheiro main.c que foi criado automaticamente e apague o seu conteúdo. Depois, copie e cole o seguinte trecho de código:
1 2 3 4 5 6 7 | #include <stdio.h> int main() { printf("Hello World!\n"); return 0; }</stdio.h> |
Este trecho de código irá imprimir, numa janela de linha de comandos, a mensagem "Hello World!". Vamos então executar este trecho de código. Para isso, tem que clicar no seguinte botão que está localizado na barra superior:
Depois de aguardarmos uns momentos, iremos visualizar a mensagem "Hello World!" numa "caixa" semelhante à seguinte (localizada na parte inferior do Netbeans):
"#include"
A primeira linha do trecho acima não é C mas sim uma indicação para o compilador. Vamos começar do início. C é uma linguagem de alta velocidade, por isso é que é usada em locais que necessitam disso como, por exemplo, o kernel - núcleo - do Linux e de diversos sistemas operativos como o Windows.
Devido à alta velocidade que pode ser proporcionada por esta linguagem, C não está preparado, por omissão, para todos os tipos de tarefas. Assim, precisamos de incluí-las para ter disponíveis mais funções.
Para as incluir, utilizamos o comando "#include" que diz ao compilador que precisa de incluir ficheiros ponto H (.h) que são ficheiros do tipo HEADER.
Nesta caso adicionámos o ficheiro "stdio.h" que quer dizer standard input/output, ou seja, sistema padrão de entrada e saída.
Função "main"
Todos os programas C têm que ter, obrigatoriamente, uma função "main" que será automaticamente executada. Esta função retorna um dado do tipo "int" (número inteiro).
De momento não há mais nada a acrescentar sobre funções porém, mais à frente, iremos voltar a falar sobre este tema e o porquê de ser muito importante.
"printf"
Este é um comando/função que está contido no ficheiro stdio.h e, caso não incluamos o ficheiro, será gerado erro. Esta função quer dizer print formatted ou seja "escrita de dados formatados".
Esta função aceita vários parâmetros ou seja, permite-nos enviar várias coisas que irão ser processadas por ela. De momento, apenas iremos falar do primeiro argumento.
O primeiro argumento é uma string ou seja "conjunto de caracteres". Este conjunto de caracteres deve ser colocado dentro de aspas.
Neste caso escrevemos "Hello World!\n!" o que quer dizer que será imprimido "Hello World!" na janela. E o que faz "\n"? Simples, é um caracter especial que imprime uma nova linha. Chama-se new line.
A "\" serve para inserir caracteres especiais. Então... como se insere esta mesma barra? Basta colocar "\\". Existem alguns outros caracteres especiais que também devem ser inseridos utilizando esta barra:
- Tab → \t
- Carriage Return (coloca o cursor no início da linha) → \r
- Alguns sons → \a e \7
- Por cento → %%
"return"
Como referi acima, a função main irá, neste caso, retornar um número inteiro. É aqui que o comando return, que quer dizer retorno, entra. Este retorna o número 0 que é o binário para falso.
De momento, ainda não temos muito a acrescentar sobre este comando mas mais à frente iremos falar de novo sobre ele quando abordarmos funções e procedimentos.
Exercícios
- Imprima o seu nome no ecrã.
- Imprima a sua idade no ecrã.
- Imprima o seu nome, idade, profissão e morada no ecrã em linhas separadas.
Mais uma vez, gostávamos de saber a sua opinião. Caso tenha alguma dúvida, pode sempre utilizar os comentários para colocar a questão. Caso o faça, pedimos que utilize a keyword [DUVIDA] no início do seu comentários.
Esta saga |
Henrique Dias |
|
Mais episódios: [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13][12] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23][24] |
Este artigo tem mais de um ano
🙂
porque c e nao java ou c#?
Se souberes C/C++, sabes C# u java… C é uma linguagem de baixo nível bsatante importante para qualquer programador. C# e java já são linguagens de mais alto nível, igualmente importantes nos dias de hoje.
Muito bem explicado. Subscrevo. 🙂
Eu ando num curso de programação e começamos logo a dar c#, nem passamos pelo C
Porque se souberes C é mais fácil mudares de linguagem de programação. O C não tem as abstracções que o Java e o C# têm e por isso é melhor para se aprender.
Além de que C ainda é utilizado em muito sítio, o sistema operativo que usaste apra escrever isso tem, quase de certeza, uma grande parte escrita em C, assim como muitos dispositivos e programas que se vêem por aí.
O d nao é mais complicado k o c#? Se é, quem programa em c programa em c#
Muitas faculdades dos US como MIT ensinam Python, por exemplo. 😉
Uma coisa que acho desnecessário, ensinar uma linguagem logo num IDE, que não é procedimento correto.
Primeiramente devia diretamente através da linha de comandos.
em sistema Unix como ubuntu ou ate mesmo Mac OS X, atraves da linha comando serve perfeitamente para programas pequenos. 😉
Olá jedi!
Sim, tens razão na questão de utilizar IDE ser a melhor opção nesta altura do campeonato mas, tal como já havia mencionado num comentário, o facto de nem todos os leitores utilizarem o mesmo SO levaria a termos que explicar comandos para diversos sistemas operativos.
Não é por mais nada.
Cumprimentos,
Henrique Dias
Citando JFK sobre a ida à Lua:
“We are doing it not because it’s easy, but because IT IS HARD”.
Keep on Pplware.
podes sempre usar o melhor ide do mundo para c…geany.
Para mim o melhor é o Turbo C. LOL
Ensinar alguem a programar e utilizar C é overkill. Acho que podiam ter usado uma linguagem mais simples para iniciantes, se esse é o objecivo.
Overkill? Porquê?
É mais fácil para alguém que seja educado a programar numa linguagem com um nível de abstracção mais baixo começar a programar num nível de abstracção mais alto, do que fazer o oposto.
Se ensinares alguém a programar em C como deve ser, esse alguém, eventualmente, irá desenvolver outras capacidades de resolução de problemas porque não há funções out of the box para fazer aquilo que em Java ou C# é trivial. Por exemplo em Java tens pacotes para tratar de listas ligadas e mapas sem teres que instalar nenhuma depend~encia adicional. Em C se quiseres fazer isso, tens que criar tu os métodos para o fazer. Isso faz-te investigar e estudar como funciona uma lista ligada para a implementares.
A curva de aprendizagem pode ser mais íngreme no início, mas a longo prazo vão aparecer outros benefícios. Além de que tu em C programas tudo, desde um programa para gestão do que quer que seja, a drivers para fazer funcionar um dispositivo ligado ao computador, até à centralina do teu carro e a outros dispositivos.
Citando JFK sobre a ida à Lua:
“We are doing it no because it’s easy, but because IT IS HARD”.
Keep on Pplware.
Era importante que o autor fizesse um tutorial a ensinar os menos inexperientes de como adicionar um compilador C/C++ ao IDE Netbeans, pois só assim poderão seguir o que aqui foi ensinado.
Deixo aqui um link que pode ajudar os menos inexperientes a adicionar o Cygwin ao NetBeans:
https://www.youtube.com/watch?v=FDJ7YhMzsXw
[Duvida]
ao tenter executar o codigo com o netbeans surge erro para configurar compilador sera que pode ajudar?
obrigado
alexandre fonseca
O Post de cima tem um link para um vídeo que ensina adicionar o compilador Cygwin ao Netbeans.
Aconselho-te a reiniciares o PC no final.
Olá Alexandre!
Recomendo a visualizar o vídeo que o Apaxe mencionou no comentário anterior. Boa sorte para a instalação e boa aprendizagem 🙂
boa noite
obrigada, apache e henique pela dica ja funciona correctamente
[Duvida]
Eu nao tenho C/C++ Application na janela de novo projecto, baixei o jdk-8u25-nb-8_0_1-windows-x64.exe nao é o full afinal? Em plugins tenho o C/C+…
Olá Alex!
Tens o compilador corretamente instalado?
Hoje peguei no ide e instalei o plugin c/c++ através do menu tools do NetBeans
Depois de o reiniciar apareceu uma janela a indicar que faltavam os compiladores para c/c++, instalei o cygwin com o gcc-g++, gdb
não sei se foi só a mim mas ao compilar estava a me dar erro só tive sucesso quando coloquei o ” ; ” no final do codigo ficando assim:
#include
int main()
{
printf(“Hello World!\n”);
return 0;
};
Alguem me pode explicar porque ou foi so mesmo erro no artigo??
Obrigado.
Olá marcio!
Não é erro do artigo. Poderá ser, talvez, do compilador. O compilador da Microsoft, por exemplo, necessita de alguns comandos adicionais.
Já agora, falta o “<stdio.h>” depois de #include. 😉
pois o “stdio.h” em falta foi mesmo erro mas a fazer o comentario e eu estou a usar o Netbeans no Ubuntu, de qualquer forma se for só isso que eu terei de fazer a mais para que tudo corre sem erros tambem não me parece grave.
Obrigado pela resposta. 😉
Boa no meu fica assim alguém explica o que fazer ?
“/C/MinGW/msys/1.0/bin/make.exe” -f nbproject/Makefile-Debug.mk QMAKE= SUBPROJECTS= .build-conf
make.exe[1]: Entering directory `/c/Users/Rodrigo Maia/Documents/NetBeansProjects/CppApplication_1′
“/C/MinGW/msys/1.0/bin/make.exe” -f nbproject/Makefile-Debug.mk dist/Debug/MinGW-Windows/cppapplication_1.exe
make.exe[2]: Entering directory `/c/Users/Rodrigo Maia/Documents/NetBeansProjects/CppApplication_1′
mkdir -p build/Debug/MinGW-Windows
make.exe[2]: mkdir: Command not found
make.exe[2]: *** [build/Debug/MinGW-Windows/main.o] Error 127
make.exe[2]: Leaving directory `/c/Users/Rodrigo Maia/Documents/NetBeansProjects/CppApplication_1′
make.exe[1]: *** [.build-conf] Error 2
make.exe[1]: Leaving directory `/c/Users/Rodrigo Maia/Documents/NetBeansProjects/CppApplication_1′
make.exe”: *** [.build-impl] Error 2
BUILD FAILED (exit value 2, total time: 3s)
Obrigado 🙂
Olá Rodrigo!
Que versão do Netbeans está a utilizar? E qual o código que está a tentar compilar (pode copiá-lo para aqui: pastebin.com)?
Boas a versão é 8.0.2 e o código é aquele que aparece no video, só que quando carrego em executar aparece isso.
Obrigado
Olá Rodrigo.
Experimenta adicionar “C/MinGW/msys/1.0/bin” à variável PATH do sistema. Estás a utilizar que SO?
Windows 8.1
Rodrigo, encontrei aqui uma página onde falam acerca desse problema (http://forums.netbeans.org/topic57824.html). Espero que seja útil. Se não conseguir resolver, diga.
Obrigado mas eu sou muito novo nisto não percebo muito bem 🙂 mas poderiam fazer um video como se instala o programa sff 🙂
Normalmente, não acontecem esses problemas. Daqui a duas semanas iremos lançar a compilação de toda a saga. Lá recomendamos apenas a instalação de um compilador e a sua utilização. Talvez seja o mais indicado e, por vezes, mais fácil. 🙂 Qualquer coisa, diga.
Obrigado 🙂 vou esperar, e uma sugestão para o pplware abrir uma aba no site a dizer “ajuda” e a ideia é quem precisar de ajuda escreve o problema e uma pessoa se for necessário entrar no computador da outra pessoa para ajudar como por exemplo o meu caso com o programa :).
Estou a tentar fazer esta introfuçao a programaçao, sou iniciante e gostaria bastante de aprender a programar
ate este capitulo ja fiz tudo mas quando tava a executar o primeiro trecho de codigo apareceu me isto http://prntscr.com/635veo (printscreen c o qe apareceu) o qe e qe tenho qe por em make command para poder executar?
alem disso gostaria de saber se eu qe sou iniciante e muito mau começar diretamente usando um IDE
Aqui também estou com o mesmo problema, dá sempre erro ao compilar. Estou a usar Arch Linux.