Conversión de tipos básicos de C ++ (números, caracteres, cadenas)

1. Conversión entre entero y coma flotante

  (1) Conversión obligatoria común, pero hay problemas

    doble d_Temp;
    int i_Temp = 323 ; 
    d_Temp = ( doble ) i_Temp;

  (2) Usar conversión forzada estándar

    Por el momento, static_cast <tipo> (valor convertido); hay cuatro tipos obligatorios estándar, que no son muy específicos.

    doble d_Temp;
    int i_Temp = 323 ; 
    d_Temp = static_cast < double > (i_Temp);

 

2. La conversión entre cadenas y números, la más poderosa es atoi

  (1) Use la función sprintf_s para convertir el número en una cadena    

    int i_temp = 2020 ; 
    std :: string s_temp;
    char c_temp [ 20 ]; 
    sprintf_s (c_temp, " % d " , i_temp); 
    s_temp = c_temp; 
    std :: cout << s_temp << std :: endl;

  (2) Use la función sscanf para convertir la cadena a un número

    doble i_temp;
    char c_temp [ 20 ] = " 15.234 " ; 
    sscanf_s (c_temp, " % lf " , & i_temp); 
    std :: cout << i_temp << std :: endl;

  (3) la función atoi, atof, atol, atoll (estándar C ++ 11) convierte la cadena a int, double, long, long long type

    std :: string s_temp;
    char c_temp [ 20 ] = " 1234 " ;
    int i_temp = atoi (c_temp); 
    s_temp = c_temp;
    std :: string s_temp;
    char c_temp [ 20 ] = " 1234.1234 " ;
    doble i_temp = atof (c_temp); 
    s_temp = c_temp;

  (4) las  funciones strtol, strtod , strtof , strtoll, strtold convierten cadenas en tipos int, double, float, long long, long double

    std :: string s_temp;
     char c_temp [ 20 ] = " 4.1234 " ;
     doble a = strtod (c_temp, nullptr);   // El siguiente parámetro es una referencia a la cadena si se encuentra una cadena

  (5) Use to_string para convertir números en cadenas

    doble d_temp = 1.567 ; 
    std :: string s_temp = to_string (d_temp);

3. Conversión entre cadenas y caracteres.

  (1) Convertir char * de cadena con c_str

    string s_temp = " esto es una cadena " ;
    const  char * c_temp; 
    c_temp = s_temp.c_str ();

  (2) La función de agregar se puede usar para agregar caracteres uno por uno

    string s_temp;
    char c_temp [ 20 ]; 
    c_temp [ 0 ] = ' H ' ; 
    c_temp [ 1 ] = ' L ' ; 
    c_temp [ 2 ] = ' L ' ; 
    c_temp [ 3 ] = ' O ' ; 
    c_temp [ 4 ] = ' \ 0 ' ; 
    s_temp = c_temp;

 

Supongo que te gusta

Origin www.cnblogs.com/xiaodangxiansheng/p/12697278.html
Recomendado
Clasificación