O que é casting?

Passo 1

Beleza, a questão é simples: “O que é casting?” Estamos na área de programação e falando especificamente de conversão de tipos (type conversion). Para resolver isso a gente vai precisar entender o que são tipos de dados (como int, float, double, char etc.) e como o programa transforma um valor de um tipo em outro.

Passo 2

Primeiro de tudo, casting nada mais é do que forçar a conversão de um valor de um tipo para outro.
  • Quando você tem, por exemplo, um número inteiro (int) e quer tratá-lo como ponto flutuante (float ou double), ou vice-versa.
  • Existem dois jeitos de converter: implicitamente (o compilador faz sozinho) e explicitamente (você fala “faz isso aqui”).

Passo 3

Vamos ver o implicit casting (conversão automática):
  1. O compilador sabe que transformar um tipo “menor” em um “maior” não perde informação.
  2. Exemplo em C/C++/Java:
    int a = 5;
    double b = a;      // a é “subido” pra double sem você pedir
    // b agora vale 5.0
    
    Em notação de fórmula: doub<=(5) = 5.0 Aqui não precisamos escrever nada especial, o compilador faz por conta própria.

Passo 4

Agora o explicit casting (quando você precisa forçar a barra):
  1. Se você vai de um tipo “maior” pra um “menor” (por exemplo, de double para int), pode perder informação decimal.
  2. Então você tem que falar “por favor, converta”.
  3. Sintaxe típica em C/C++/Java:
    double x = 7.8;
    int y = (int)x;    // explicit cast
    // y agora vale 7, a parte .8 foi descartada
    
    Na forma de fórmula em LaTeX: int(7.8) = 7 Sem esse “(int)” o compilador geralmente reclama de incompatibilidade de tipos.

Resposta

Casting é o ato de converter um valor de um tipo de dado para outro, seja de forma implícita (quando o compilador faz sozinho) ou explícita (quando você força com uma sintaxe de cast, como (int) ou (double)).

Exercícios relacionados