Manufactura industrial
Internet industrial de las cosas | Materiales industriales | Mantenimiento y reparación de equipos | Programación industrial |
home  MfgRobots >> Manufactura industrial >  >> Industrial programming >> Lenguaje C

Conversión de tipo C++

Conversión de tipo C++

En este tutorial, aprenderemos los conceptos básicos de la conversión de tipos de C++ con la ayuda de ejemplos.

C++ nos permite convertir datos de un tipo a otro. Esto se conoce como conversión de tipos.

Hay dos tipos de conversión de tipos en C++.

  1. Conversión implícita
  2. Conversión explícita (también conocida como conversión de tipo)

Conversión de tipos implícita

La conversión de tipo que realiza automáticamente el compilador se conoce como conversión de tipo implícita. Este tipo de conversión también se conoce como conversión automática.

Veamos dos ejemplos de conversión de tipos implícita.


Ejemplo 1:Conversión de int a double

// Working of implicit type-conversion

#include <iostream>
using namespace std;

int main() {
   // assigning an int value to num_int
   int num_int = 9;

   // declaring a double type variable
   double num_double;
 
   // implicit conversion
   // assigning int value to a double variable
   num_double = num_int;

   cout << "num_int = " << num_int << endl;
   cout << "num_double = " << num_double << endl;

   return 0;
}

Salida

num_int = 9
num_double = 9

En el programa le hemos asignado un int datos a un double variables.

num_double = num_int;

Aquí, el int el valor se convierte automáticamente a double por el compilador antes de que se asigne a num_double variable. Este es un ejemplo de conversión de tipo implícita.


Ejemplo 2:Conversión automática de double a int

//Working of Implicit type-conversion

#include <iostream>
using namespace std;

int main() {

   int num_int;
   double num_double = 9.99;

   // implicit conversion
   // assigning a double value to an int variable
   num_int = num_double;

   cout << "num_int = " << num_int << endl;
   cout << "num_double = " << num_double << endl;

   return 0;
}

Salida

num_int = 9
num_double = 9.99

En el programa, hemos asignado un double datos a un int variables.

num_double = num_int;

Aquí, el double el valor se convierte automáticamente a int por el compilador antes de que se asigne a num_int variable. Este también es un ejemplo de conversión de tipo implícita.

Nota: Desde int no puede tener una parte decimal, los dígitos después del punto decimal se truncan en el ejemplo anterior.


Pérdida de datos durante la conversión (conversión restringida)

Como hemos visto en el ejemplo anterior, la conversión de un tipo de datos a otro es propensa a la pérdida de datos. Esto sucede cuando los datos de un tipo más grande se convierten en datos de un tipo más pequeño.


Conversión explícita de C++

Cuando el usuario cambia manualmente los datos de un tipo a otro, esto se conoce como conversión explícita. . Este tipo de conversión también se conoce como conversión de tipos. .

Hay tres formas principales en las que podemos usar la conversión explícita en C++. Ellos son:

  1. Casting de tipo estilo C (también conocido como notación de cast )
  2. Notación de función (también conocida como conversión de tipo de estilo C++ antiguo )
  3. Operadores de conversión de tipos

Casting tipo estilo C

Como sugiere el nombre, este tipo de conversión se ve favorecida por el lenguaje de programación C. . También se conoce como notación cast. .

La sintaxis de este estilo es:

(data_type)expression;

Por ejemplo,

// initializing int variable
int num_int = 26;

// declaring double variable
double num_double;

// converting from int to double
num_double = (double)num_int;

Casting de estilo de función

También podemos usar la función como notación para convertir datos de un tipo a otro.

La sintaxis de este estilo es:

data_type(expression);

Por ejemplo,

// initializing int variable
int num_int = 26;

// declaring double variable
double num_double;

// converting from int to double
num_double = double(num_int);

Ejemplo 3:conversión de tipos

#include <iostream>

using namespace std;

int main() {
    // initializing a double variable
    double num_double = 3.56;
    cout << "num_double = " << num_double << endl;

    // C-style conversion from double to int
    int num_int1 = (int)num_double;
    cout << "num_int1   = " << num_int1 << endl;

    // function-style conversion from double to int
    int num_int2 = int(num_double);
    cout << "num_int2   = " << num_int2 << endl;

    return 0;
}

Salida

num_double = 3.56
num_int1   = 3
num_int2   = 3

Usamos tanto la conversión de tipo de estilo C y la conversión de estilo de función para la conversión de tipo y mostró los resultados. Dado que realizan la misma tarea, ambos nos dan el mismo resultado.


Operadores de conversión de tipos

Además de estas dos conversiones de tipos, C++ también tiene cuatro operadores para la conversión de tipos. Se conocen como operadores de conversión de tipos. . Ellos son:

Aprenderemos sobre estos moldes en tutoriales posteriores.


Tutoriales recomendados:


Lenguaje C

  1. Conversión de tipo C#
  2. Tipos de datos de C++
  3. Operadores de C++
  4. Comentarios de C++
  5. Plantillas de clase de C++
  6. Conversión de tipos de Python y conversión de tipos
  7. Números de Python, conversión de tipos y matemáticas
  8. Tipo de datos Char de C++ con ejemplos
  9. Descripción general de C++
  10. Tipos de variables de C++
  11. Constantes/Literales de C++