Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

Convertendo tipos de variáveis

bom dia pessoal

dentre as variaveis "double" dedicado a numeros quebrados = 1.1 2.1 3.1 etc

" int " dedicado para numeros inteiros = 1 2 3 etcs...

e quando o usuario deve ser livre, podendo inserir qualquer tipo de valor, inteiro franções há alguma variavel ?

ou melhor, conhecem algum material de apoio, pra estudar mais sobre Os tipos de Variaveis e como aplicalas. ?

3 respostas

Olá,

C++ é fortemente tipado, e sua pergunta ficou generica d+, mas vou tentar responder.

Imagina que os tipos para números no C++ são como "baldes", vc declara o "balde" para a quantidade de agua que vc quer colocar nele.

Se vc pegar o maior "balde" vc vai colocara quantidade máxima de agua, mas vai ter todo o desconforto de um "balde" grande para transportar quantidades pequenas de agua, vc quem decide pela escolha do balde. Essa mesma metafora serve para quantidades muito pequena de agua e "baldes" bem pequenos.

Esse programinha mostra o tamanho de alguns dos tipos existentes, mas existem mais:

#include <iostream>

int main()
{
    std::cout << "Tipos" << std::endl;

    std::cout << "short int: " << sizeof(short int) << " bytes;" << std::endl;
    std::cout << "signed int: " << sizeof(signed int) << " bytes;" << std::endl;
    std::cout << "signed short int: " << sizeof(signed short int) << " bytes;" << std::endl;
    std::cout << "unsigned short int: " << sizeof(unsigned short int) << " bytes;" << std::endl;
    std::cout << "int: " << sizeof(int) << " bytes;" << std::endl;
    std::cout << "long int: " << sizeof(long int) << " bytes;" << std::endl;
    std::cout << "signed long int: " << sizeof(signed long int) << " bytes;" << std::endl;
    std::cout << "unsigned int: " << sizeof(unsigned int) << " bytes;" << std::endl;
    std::cout << "unsigned long int: " << sizeof(unsigned long int) << " bytes;" << std::endl;
    std::cout << "float: " << sizeof(float) << " bytes;" << std::endl;
    std::cout << "double: " << sizeof(double) << " bytes;" << std::endl;
}

Você é livre para escolher o "balde" que quiser, essa é a liberdade, mas vem todo trabalho e resposábilidade pela escolha.

Não tenho nenhum link espesifico para isso, mas o Wiki pode ser um bom começo se for para começar pelo básico.

Espero ter pelo menos dado uma orientada no que querias saber.

oiii, obrigado pela ajuda.

O que quis dizer é que cada tipo de variavel vai ocupar/e/usar um espaço de memoria, e que a memoria nas aplicações/circuitos é FINITA ?

A dúvida que me surgiu é se há alguma variável "generica" que possa ser usada uma unica variavel para varios tipos de dados = exemplo: Numeros inteiros e frações e letras ?

mais uma vez, obrigado pelo tempo e partilhamento de experiência

solução!

Ola.

Sim memoria é um recurso limitado.

Em C/C++ nos tipos primitivos nós não temos esse tipo genérico. Somos obrigados a declarar o tipo que vamos usar e dependendo as veses o tamanho também.

Mas você pode procurar por Struct, e montar um tipo seu. Pode também ver orientação a objeto e tipificar o tipo de variavel que vc quer em uma classe.