O que é o TypeCasting in C++?
Já afirmamos que a tipecasting converte uma variável ou uma expressão de um tipo de dados para outro. Existem principalmente dois tipos de tipecasting em C ++, i.e., Tipulante implícita e tipecasting explícito. No tipo anterior, não especificamos o tipo de dados em que queremos digitar a expressão, enquanto que, no último tipo, declaramos explicitamente o tipo de dados no qual queremos converter a expressão dada.
Exemplos de TypeCasting em C ++ no Ubuntu 20.04:
Os exemplos a seguir foram projetados para ensinar algumas das diferentes formas de tipo de tipo. Depois de passar por todos esses exemplos, você poderá saber como pode converter um tipo de dados para outro usando a técnica de tipo de tipo.
Exemplo # 1: Conversão de um número em seu caractere ASCII equivalente através da TypeCasting de estilo C:
Neste exemplo, queríamos passar um número ao nosso código C ++ e convertê -lo em seu caractere ASCII equivalente usando o estilo C TypeCasting. O tipo de dados tipecasting está incluído em suportes redondos na linguagem de programação C, seguida pela expressão a ser tipo fundido. Você poderá obter esse estilo TypeCasting, passando pelo seguinte programa C ++:
Para este exemplo em particular, criamos um arquivo chamado “TypeCasting.CPP ”que conterá nosso código C ++. Incluímos a biblioteca necessária primeiro neste código, seguido pelo espaço para nome "std". Em seguida, temos nossa função "main ()" na qual simplesmente usamos a declaração "cout" que imprimirá o equivalente ASCII do número "65" no terminal.
Depois de salvarmos nosso código C ++, o compilamos usando o comando mostrado abaixo:
$ G ++ TypeCasting.CPP -O TypeCasting
Usamos o compilador "G ++" para compilar nosso código C ++, “TypeCasting.CPP ”é o nosso arquivo de origem, enquanto“ TypeCasting ”será o arquivo de objeto que será criado como resultado dessa compilação.
Agora, podemos executar nosso arquivo de objeto com o seguinte comando:
$ ./TypeCasting
O caráter equivalente ASCII do número "65" é "A", como mostrado na imagem abaixo:
Exemplo # 2: Gerando toda a tabela ASCII através da TypeCasting de estilo C:
Também podemos gerar toda a tabela ASCII usando a mesma tipo de estilo C no Ubuntu 20.04. Para isso, implementamos o seguinte código C ++ em nosso Ubuntu 20.04 Sistema:
Neste código C ++, depois de incluir a biblioteca e o espaço para nome necessários, temos nossa função "main ()" na qual temos um loop "para". Este loop itera sobre uma variável chamada "alfabeto". Inicializamos essa variável com o valor "0", enquanto a condição de terminação para este loop é "alfabeto<128”. After that, we have simply incremented our “alphabet” variable. Within the body of this loop, we have our “cout” statement that will print the ASCII equivalent character corresponding to each alphabet from 0 to 127.
Depois de salvar esse código C ++, nós o compilamos e executamos como resultado do qual fomos capazes de gerar toda a tabela ASCII em nosso Ubuntu 20.04 Terminal, como mostrado na imagem abaixo:
Exemplo # 3: Conversão de um flutuador em um número inteiro para uma operação de atribuição por meio da TypeCasting funcional:
Neste exemplo, aprenderemos um método de tipo de tipo diferente conhecido como tipo de tipo funcional. Neste método de tipo de tipo de tipo, temos o tipo de dados sem colchetes seguidos pela expressão a ser tipo escrito dentro de suportes redondos. Essa maneira de tipecasting parece mais chamar uma função em C ++, e é por isso que é conhecida como TypeCasting funcional. Além disso, esta é uma forma de teconferência explícita. Nosso principal objetivo neste exemplo é converter um número de ponto flutuante em um número inteiro para uma operação de atribuição. Você pode ver o código C ++ a seguir para saber exatamente o que pretendemos fazer:
Neste código C ++, declaramos uma variável de flutuação "x" e atribuímos o valor "12.4 ”. Em seguida, declaramos uma variável "y" que tem o tipo de dados inteiro. Queríamos atribuir o valor da variável "x" a "y", o que é possível apenas se "x" também for um número inteiro. Portanto, temos que digitar a variável "x" no tipo de dados inteiro ao atribuí -lo a "y". Finalmente, queríamos imprimir o valor da variável "y" no terminal para ver se a atribuição da variável ocorreu corretamente ou não.
Quando executamos esse código, o valor da variável "y" acabou sendo "12", o que significa que a atribuição da variável foi bem-sucedida porque sempre que tentamos digitar um número de ponto flutuante para um número inteiro, sua parte decimal é sempre truncada. Isso pode ser visto na imagem abaixo:
Exemplo # 4: Conversão de um número inteiro em um flutuador para uma operação de tarefas por meio de tipo de tipo de tipo de atribuição:
Neste exemplo, aprenderemos mais um método de tipo de tipo de tipo diferente, conhecido como TypeCasting implícito. Neste método de tipo de tipo de tipo, não especificamos explicitamente o tipo de dados no qual queremos digitar nossas variáveis; Em vez disso, essa decisão é tomada no tempo de execução de acordo com o tipo de dados da variável ao qual um valor está sendo atribuído. Nosso principal objetivo neste exemplo é converter o resultado da divisão de dois números inteiros em um número de ponto flutuante para uma operação de atribuição. Você pode ver o código C ++ a seguir para saber exatamente o que pretendemos fazer:
Neste código C ++, declaramos duas variáveis inteiras, "x" e "y" e atribuímos os valores "12" e "5", respectivamente, respectivamente. Em seguida, declaramos uma variável "z" que tem o tipo de dados float. Queríamos atribuir o resultado de "x/y" a "z", o que é possível apenas se o resultado de "x/y" também for um flutuador. No entanto, no caso de tecastamento implícito, não precisamos necessariamente converter "x/y" em um flutuador; Em vez disso, pode ser atribuído como é para a variável "z" como fizemos em nosso código. Finalmente, queríamos imprimir o valor da variável "Z" no terminal para ver se a atribuição da variável ocorreu corretamente ou não.
Quando executamos esse código, o valor da variável "Z" acabou sendo "2", o que significa que a atribuição da variável foi bem -sucedida em relação a TypeCasting implícito, porque sempre que tentamos digitar um número inteiro para um flutuador com tipo de tipo de tipografia implícita, seu decimal a parte é sempre truncada. Isso pode ser visto na imagem abaixo:
Conclusão:
Queríamos explicar a você o conceito de tipecasting em C ++ no Ubuntu 20.04 Neste artigo. Primeiro, explicamos os diferentes tipos de tipo de tipo de tipo, após o que declaramos alguns exemplos diferentes que elaboraram o conceito de tipo de tipo++. Este artigo acabou de dar uma visão geral básica do tipo TypeCasting in C++. Seguindo as mesmas linhas, você também pode executar a conversão de outros tipos de dados.