2
respostas

tipo double/ float para 3.14 ?

Olá. Não consegui compreender porque o 3.14 não pode ser armazenado em uma variável de 32bits (float) sem o casting. Porque é considerado como um valor com 64bits?

2 respostas

Oii Joice, tudo certo?

Quando armazenamos um número com casas decimais em uma variável, o compilador entende esse número como um double, por padrão e reserva 64 bits para armazená-lo, ao invés de 32 bits. Então, por mais que a gente declare

float numero = 3.14;

o compilador ainda acha que estamos trabalhando com um double. Por isso, devemos fazer o casting, seja fazendo 3.14f (mais simples) ou

float numero = (float) 3.14;

Espero que tenha ficado mais claro!

Abraços e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!

Oi, Iasmin. Estou bem, espero que esteja bem tbm. Ficou mais claro sim, agradeço a explicação. :D