Saltar para o conteúdo
Topos Uranos

Resumo

Esta aula decompõe o programa mínimo de C++ em suas peças e explica o papel de cada uma. A diretiva de inclusão declara de quais partes da biblioteca o programa depende, e cada componente exige seu próprio cabeçalho, ainda que às vezes outro o traga “de tabela”; a função main é o ponto de entrada, e seu valor de retorno, o código de saída que o sistema recebe; o namespace std reúne os nomes da biblioteca, e o curso sempre os escreve com seu prefixo; as instruções terminam em ponto e vírgula, as chaves agrupam instruções em blocos e os comentários explicam o que o código não diz por si mesmo. A aula termina com o guia de estilo que o curso segue em todos os seus programas, e com a maneira de ler o código alheio que usa std::cout e std::endl.

Objetivos de aprendizagem

  1. Identificar em um programa a diretiva de inclusão, a função main, as instruções, os blocos e os comentários, e explicar o papel de cada um.
  2. Explicar o que #include faz e por que cada componente da biblioteca exige seu próprio cabeçalho, ainda que o programa compile sem ele em um compilador determinado.
  3. Corrigir um programa com erros de estrutura (chave sem fechar, ponto e vírgula ausente, cabeçalho omitido) a partir das mensagens do compilador, lidas desde a primeira.
  4. Reescrever um programa segundo o guia de estilo do curso e justificar cada mudança.

O programa mínimo

Na aula anterior compilou-se e executou-se um programa sem examiná-lo. Agora ele é lido linha por linha, porque cada linha responde a uma exigência distinta: uma da linguagem, outra do sistema operacional, outra de quem lê o código. O programa é este.

Programa em C++
// Primeiro programa: escreve uma linha e termina.#include <print>​int main(){    std::println("Olá, mundo");}
Saída
Olá, mundo

A primeira linha é um comentário: começa com duas barras e vai até o fim da linha, e o compilador a descarta; está escrita para quem ler o programa. A segunda é uma diretiva de inclusão: pede que, antes de compilar, se incorpore o cabeçalho <print>, onde a biblioteca padrão declara std::println. A linha em branco não tem efeito algum; separa a preparação do programa de seu conteúdo. A quarta linha abre a função main, o lugar onde a execução começa, e a chave da quinta abre seu bloco, que se fecha na última linha. Dentro do bloco há uma única instrução, terminada em ponto e vírgula: a chamada a std::println, que escreve o texto entre aspas e depois uma quebra de linha.

Convém notar que o programa não contém nenhuma instrução para terminar. Ao chegar à chave final de main, a execução termina, e o programa comunica ao sistema que tudo correu bem; mais adiante se verá como. Daí se segue que cinco peças bastam para um programa completo: comentários, diretivas, a função main, blocos e instruções. As seções seguintes as examinam nessa ordem, salvo os comentários, que se tratam junto com as instruções e os blocos.

ExemploAs peças, uma por uma

No programa da saudação, a diretiva é a linha 2; a função main ocupa as linhas 4 a 7; seu bloco vai da chave da linha 5 à da linha 7; a única instrução é a linha 6, e o único comentário, a linha 1. Se o comentário for apagado, o programa compila do mesmo modo e produz a mesma saída; se qualquer uma das outras peças for apagada, ele deixa de compilar ou de ser um programa.