Aula 01 do curso básico de algoritmo em C
Surgimento da linguagem C
- A linguagem de programação C apareceu com o uso da codificação estruturada e do computador pessoal.
- Desenvolvida entre 1969 e 1973 por Dennis Ritchie, no AT&T Bell Labs.
- Foi usada na continuação do UNIX, que inicialmente foi em Assembly.
- Foi feita a partir de uma linguagem anterior chamada B, que era uma versão reduzida do BCPL , uma linguagem ainda anterior.
- A linguagem B foi criada por Ken Thompson.
- Ritchie e Tompson participaram da equipe de desenvolvimento do UNIX, usando C, por ser mais portável do que o Assembly, para implementação do UNIX no PDP-11.
- PDP-11 era um minicomputador de 16 bits, fabricado pela empresa Digital Equipment Corp. nas décadas de 1970 e 1980
A linguagem C hoje
- Muito utilizada e procurada.
- Provavelmente não morrerá nunca
- Muito utilizada para criar funções de baixo nível, componentes gráficos, como por exemplo, a biblioteca openGL.
- É inspiração para a criação de novas linguagens, como: Java, JavaScript, C#, C++, Python etc.
Características
- Imperativa, universal, procedural e estruturada.
- Imperativa são as linguagens baseadas em estados, definidos em variáveis, e por ações que manipulam os estados das variáveis.
- Universal por não ser dependente de um sistema operacional específico, possuindo dessa forma características de portabilidade e flexibilidade.
- Procedural, faz uso de procedimentos, seqüência de ações que um programa deve executar para chegar a algum resultado.
Onde tem programação em C na prática?
- No kernel dos sistemas operacionais Unix, Windows, Darwin (que é o sistema da Apple), IOS, entre outros.
- Nos drivers dos componentes dos hardware de computador.
- Em códigos de programas essenciais e que demandam desempenho.
- Em equipamentos eletrônicos, chips, microprocessadores e eletrodomésticos.
- Na maioria dos softwares mais poderosos.
Algoritmo / Código
- Algoritmo é parecido com uma receita.
- Algoritmo é a lógica do código
- O código é a implementação do algoritmo
- O código é compilado para que a máquina o entenda
- Na compilação, o código será transformado em linguagem de máquina.
- O código compilado é o programa executável
Estrutura de um Código em C
- Logo no início temos as instruções de pre-processamento, essas instruções começam com o símbolo hashtag “#”.
- Antes da compilação propriamente dita, é executado o processamento dessas instruções de pré-processamento, como por exemplo, diretivas #ifdef, #include, substituições de macros (#define) etc.
É no pré-processamento que ocorre:
- Junção das linhas separadas por sequências de scape
- Remoção dos comentários do código, substituindo-os por espaços em branco
- Expansão de macros, exemplo, a constante #define PI 3.1415926
- Processamento das diretivas de pré-processamento
Estrutura de um Código em C
- Toda função tem um tipo de retorno, um nome, depois do nome, parênteses onde a função pode receber seus parâmetros para trabalhar e por último, um corpo delimitados por chaves { }
int atualizaEstoque(int qtd, int prodCod)
{
//corpo da função atualizaEstoque( )
}
Estrutura da função main
- Todo programa em C começa pela função main( ), é o início da pilha de execução
int main(void)
{
//corpo da função main( )
return 0; /*o return 0 (zero) indica que o programa finalizou corretamente caso contrário a
função retorna um valor diferente de zero */
}
Comentários
- Para comentários de linha única utiliza-se //
- //Comentário de linha única01//Comentário de linha única02
- Para comentários de múltiplas linhas utiliza-se /* */
- /*Aqui eu posso por comentários longos,que podem abranger várias linhas,Blá blá blá*/
- Os comentários são ignorados pelo compilador, servem apenas para que o desenvolvedor diga do que se trata cada parte de seu código.
Compilação
- Pré-processamento: executa algumas instruções preparatórias para poder executar o restante das instruções do nosso programa corretamente.
- Verificação sintática: procura eventuais erros nos códigos dos programas, parênteses, chaves, ponto e vírgula faltando etc.
- Compilação: transforma o código pré-processado, em um programa-objeto em linguagem de máquina.
- Linkedição: junta todos os programas-objeto derivados de cada arquivo .c do programa, bibliotecas usadas etc. Em um único executável.
- http://sourceforge.net/projects/mingw/files/latest/download
Obrigado
Até a próxima
Aula 01 – Algoritmo em C