segunda-feira, 8 de setembro de 2014

C++ - Ola Mundo - Aula 1

 Muitas pessoas que estão começando a estudar C++ simplesmente desistem pois acham muito difícil, na realidade ele não é muito difícil e acho muito melhor programar em C++ do que em outras linguagens, a maioria das bibliotecas são feitas para o C++ e existem muitos tutorias pela internet que ajudam muito quem esta começando a programar em C++.
 No geral se você ler uma apostila inteira de C++ você aprende somente a criar programas em Console, mas aprende todas as regras, funções de bibliotecas padrões, trabalhar com arquivos, comandos de controle de fluxo e outros, depois de conhecer tudo isso você deve começar estudar bibliotecas relacionadas ao tipo de programa você vai desenvolver, por exemplo, DirectX ou OpenGL para trabalhar com gráficos 3D e desenvolvimento de jogos, ffmpeg para a edição de videos, mas isso varia muito com o que você vai desenvolver.
 Existem muitas bibliotecas para facilitar o trabalho manual, por exemplo, para criar uma simples janela você deve conhecer o Win32 API, mas existem bibliotecas como QT, GTK+, WxWidgets e outros que facilitam este serviço para você.
 Como na maioria das apostilas, eu vou começar falando do C++ com o exemplo Ola Mundo que é simplesmente um programa que imprime Ola Mundo no Console, para isso vou estar utilizando o Visual Studio 2012 (deixei o link de download na postagem anterior).
 Apos instalar e abrir o Visual Studio você deve ver a seguinte tela:
 Primeiramente, na maioria das apostilas existem duas formas de imprimir o Ola Mundo na tela, uma das maneiras é usando o arquivo de cabeçalho "stdio.h"que significa Standard Input/Output ou Entradas e Saídas Padronizadas, e outra usando o "iostream.h" que significa Input/Output Stream que ficaria mais ou menos Fluxo de Entrada e Saída em português.
 No geral, a maioria das pessoa preferem o "iostream.h" do que o "stdio.h" pois dizem que é mais seguro, mais rápido e mais fácil mas nos antigos compiladores de linguagem C o "iostream.h" não existia.
 Se você ficou confuso nessa primeira parte não se preocupe, vou falar disso em outros posts, mas hoje vou começar mostrando o método usando o "stdio.h" que não é complicado.
 Primeiro abra sua IDE que no meu caso é o Visual Studio, clique em File->New->Project, neste momento vai abrir uma janela para você escolher o tipo de projeto que você quer, do lado esquerdo da janela em Templates escolha a opção Visual C++ e na lista ao lado escolha a opção Win32 Console Application como na imagem abaixo:


























 Preencha o campo Name e clique em OK, a seguir vai aparecer outra janela, apenas clique em Finish, sera gerado um codigo como esse:
 // Aula1_blog.cpp : Defines the entry point for the console application.  
 //  
 #include "stdafx.h"  
 int _tmain(int argc, _TCHAR* argv[])  
 {
      
      return 0;  
 }  

Se você já leu apostilas de C++ você deve ter percebido que no geral a primeira função a ser iniciada é a função main, mas no Visual Studio para ter compatibilidade com algumas bibliotecas o ponto de entrada acaba sendo diferente, no caso o _tmain, e para utilizarmos a função de escrita precisaríamos incluir a biblioteca "stdio.h", mas o próprio "stdafx.h" já inclui o "stdio.h".
 A primeira e a segunda linha do código acima começam com \\ (Duas Barras), isso significa que são comentários e serão desconsiderados pelo compilador, ou seja, você pode utiliza-las para manter seu código mais organizado.
 A terceira linha tem a diretiva de compilação #include que diz ao compilador para incluir um arquivo de código fonte, quando ele esta entre aspas duplas significa que o arquivo esta no seu projeto, quando esta entre os símbolos de < "Menor que" e o > "Maior que" significa que o documento a ser incluso esta nas includes do compilador.
 A quarta linha é uma função, vamos falar futuramente o que são funções, no caso acima o "int
" que tem antes do _tmain quer dizer o tipo que a função vai retornar, no caso um numero inteiro, o _tmain é o nome da função que é o ponto de entrada e o que tem entre os parenteses são os parâmetros da função que também vou falar futuramente sobre isso.
 O que tem na quinta e na ultima linha são chaves "{ }" que delimitam até onde vai a função, sempre quando a função termina ela deve retornar o tipo especificado na criação da função, no caso da _tmain é um valor inteiro, por isso na sexta linha esta escrito return 0;.
 Sempre que você termina uma linha do código que sejam operações de alteração, chamadas de função e outros você precisam terminar com ponto e virgula no final, como você pode ver na linha 6.
 Agora vamos chamar a função para escrever o texto "Ola Mundo" na tela.
 A função da "stdio.h" usada para escrever algo na tela é a printf, mas como estamos usando o Visual Studio vamos usar o printf_s, adicione a seguinte linha antes do codigo "return 0":
      printf_s("Ola Mundo");  
      getchar();  
 printf_s é uma função usada para mostrar textos, numeros e outros na tela, quando chamamos uma função mandamos informações para ela chamadas de argumentos, estas informações devem estar entre parenteses como você pode ver acima, mas no nosso caso esta informação é um texto (o que chamamos de string e vamos explicar depois) e devemos coloca-los entre aspas duplas para que os compilador não confunda o texto com um codigo, e no final não devemos de esquecer de colocar o ponto e virgula.
 getchar é uma função usada para receber um caractere, mas no nosso caso usamos somente para manter nosso texto na tela, caso contrario ele apareceria durante menos de 1 segundo, do mesmo jeito que o printf_s devemos colocar os parenteses pois getchar também é uma função, porem ela não recebe parâmetros então deixamos os parenteses vazios, e novamente terminamos com ponto e virgula no final.
 O código inteiro deve ter ficado dessa maneira:
 // Aula1_blog.cpp : Defines the entry point for the console application.  
 //  
 #include "stdafx.h"  
 int _tmain(int argc, _TCHAR* argv[])  
 {  
      printf_s("Ola Mundo");  
      getchar();  
      return 0;  
 }  
 Apos ter escrito este código você já pode executa-lo, para isso você clica em Debug e em Start Debugging, este modo de execução avisa quando tem um erro no tempo de execução, mas seu executável também foi gerado e deve estar no diretório de Documentos\Visual Studio 2012\Projects\Nome_do_seu_projeto\Debug\Nome_do_projeto.exe
 O resultado final da execução deve ter ficado dessa maneira:
Neste post é só, se vocês tiverem alguma duvida coloquem nos comentários, até o próximo post.

Postagens sobre programação

 Hoje depois de 9 meses sem postar nada voltei para falar que vou começar fazer aulas sobre programação aqui no blog, se você for ver as próximas aulas é necessário que você tenha instalado uma IDE, eu vou estar utilizando o Visual Studio que vocês podem baixar no site da microsoft no seguinte link:
 http://www.visualstudio.com/downloads/download-visual-studio-vs
 Se vocês quiserem usar outra IDE para C++ eu recomendo o Code::Blocks, mas este usa o compilador MinGW.
 Provavelmente vou começar falando de C++ ou C# mas depois vou falar de outras linguagens e bibliotecas.