Hello, World!

1. Programa C++ mais simples

int main()  // Programa C++ mais simples
{

} Code language: JavaScript (javascript)
  1. Este código define uma função apenas com main, sem parâmetros de entrada e sem executar nenhuma operação.
  2. A chave de abertura { indica o início da função main, a chave de fechamento } marca o final do corpo da função. Todo código que deve ser executado fica dentro de {}.
  3. As duas barras inclinadas // representam comentário de linha única. Tudo após // até o fim da linha é apenas leitura humana e o compilador ignora os comentários;
  4. Todo programa C++ completo deve ter exatamente uma função global main(), a execução do programa começa pelo main
  5. int significa que a função retorna um número inteiro. Dentro do corpo da função, retornar 0 indica execução normal do programa, retornar um valor diferente de 0 significa que houve um erro.
  6. O valor de retorno citado no item 5 é lido por sistemas Unix/Linux, enquanto a maioria dos programas Windows não o utiliza.

2. Exemplo completo de saída padrão Hello World

#include <iostream>

int main()
{
    std::cout << "Hello, World!\n";
}Code language: C++ (cpp)
  • #include <iostream>: Informa ao compilador para importar as declarações da biblioteca de fluxos de entrada e saída padrão. Sem essa linha, o comando de saída std::cout não será reconhecido;

iostream é uma das bibliotecas padrão citadas anteriormente, um código pronto em C++ embutido no compilador, usado para operações de entrada e saída, como exibir um texto no terminal do console.

  • Operador de saída <<: Escreve o conteúdo do lado direito no objeto de saída std::cout. Neste exemplo, a string literal "Hello, World!\n" é impressa (não em impressora física, e sim exibida) no console padrão (terminal CMD) via std::cout
  • “Hello, World!\n” é uma string literal: texto envolto por aspas duplas; o caractere de escape \n é uma quebra de linha, após a impressão o cursor pula automaticamente para a linha seguinte
  • std::: Qualificador de namespace, indica que o cout é um componente da biblioteca padrão std. Mais adiante veremos o comando using namespace std;, que permite omitir o prefixo std:: e usar apenas cout.

O qualificador de namespace serve para evitar conflitos de nomes, adicionando um prefixo às bibliotecas. Por analogia: se houver dois alunos com o mesmo nome em uma turma, o professor pode adicionar rótulos como Jason Um, Jason Dois para diferenciá-los; esse rótulo tem a mesma função do std aqui.

Exemplo completo

O exemplo abaixo define duas funções extras: uma é chamada dentro da main, e ela por sua vez chama a outra. O código calcula a área de um círculo: basta informar o raio para exibir a área correspondente.

#include <iostream>
using namespace std; // Ao declarar o namespace std, não é preciso escrever std:: nos comandos abaixo

// Calcular área do círculo
double circle_area(double x)
{
    return 3.14 * x * x;
}

// Exibir área do círculo
void print_circle_area(double r)
{
    cout << "The area of circle with radius " << r << " is " << circle_area(r) << "\n";
}

int main()
{
    print_circle_area(2.0); // Raio igual a 2, exibe a área do círculo
    return 0;
}Code language: C++ (cpp)

Resultado da execução

The area of circle with radius 2 is 12.56Code language: JavaScript (javascript)

É possível encadear vários operadores << no cout para exibir múltiplos conteúdos seguidos. Sem o caractere \n, tudo permanece na mesma linha. Além de strings literais, também é possível imprimir variáveis, como a variável r do tipo double deste trecho.

Em void print_circle_area(double r), o trecho entre parênteses (double r) são os parâmetros de entrada. O parâmetro de entrada significa que o valor de r é passado de fora para dentro da função. Ao chamar print_circle_area(2.0); na main, o valor 2.0 é enviado, então dentro da função r vale 2.0. Depois, o cout exibe um texto, a variável r e em seguida chama a função circle_area(r). Nessa chamada, o valor 2.0 de r é repassado para o parâmetro x de double circle_area(double x), logo x também vale 2.0 nessa função. O cálculo 3.14 * 2 * 2 resulta em 12.56, que é retornado via return para o ponto de chamada, equivalente ao código abaixo:

cout << "The area of circle with radius " << r << " is " <<  12.56 << "\n";Code language: C++ (cpp)

Após a exibição terminar, a chave fecha a função print_circle_area e o fluxo retorna para a main.

Deixe um comentário

O seu endereço de email não será publicado. Campos obrigatórios marcados com *