📌  相关文章
📜  在C C++中将字符串转换为数字(1)

📅  最后修改于: 2023-12-03 15:07:52.038000             🧑  作者: Mango

在C/C++中将字符串转换为数字

在编写C/C++程序时,经常需要将字符串转换为数字类型。这是因为从文件读取的输入通常是以字符串的形式提供的,而计算机通常需要数字来执行计算。

使用atoi函数将字符串转换为整数

在C语言中,可以使用标准函数atoi将字符串转换为整数类型。该函数可以在stdlib.h头文件中找到。

下面是使用atoi函数将字符串转换为整数的示例:

#include <stdio.h>
#include <stdlib.h>

int main()
{
    char str[] = "1234";
    int num = atoi(str);
    printf("The number is %d\n", num);
    return 0;
}

运行上面的代码将输出以下结果:

The number is 1234
使用atof函数将字符串转换为浮点数

在C语言中,可以使用标准函数atof将字符串转换为浮点数类型。该函数可以在stdlib.h头文件中找到。

下面是使用atof函数将字符串转换为浮点数的示例:

#include <stdio.h>
#include <stdlib.h>

int main()
{
    char str[] = "3.1415926";
    float num = atof(str);
    printf("The number is %f\n", num);
    return 0;
}

运行上面的代码将输出以下结果:

The number is 3.141593
使用stringstream将字符串转换为数字

在C++中,可以使用stringstream类将字符串转换为数字类型。对于复杂的字符串,使用该方法比较容易。

下面是使用stringstream将字符串转换为整数的示例:

#include <iostream>
#include <sstream>

int main()
{
    std::string str = "1234";
    int num;
    std::stringstream ss(str);
    ss >> num;
    std::cout << "The number is " << num << std::endl;
    return 0;
}

运行上面的代码将输出以下结果:

The number is 1234

下面是使用stringstream将字符串转换为浮点数的示例:

#include <iostream>
#include <sstream>

int main()
{
    std::string str = "3.1415926";
    float num;
    std::stringstream ss(str);
    ss >> num;
    std::cout << "The number is " << num << std::endl;
    return 0;
}

运行上面的代码将输出以下结果:

The number is 3.14159
使用stod和stoi函数将字符串转换为数字

C++11中引入了stodstoi函数,可以将字符串转换为浮点数和整数。这些函数在头文件<string>中声明。

下面是使用stoi将字符串转换为整数的示例:

#include <iostream>
#include <string>

int main()
{
    std::string str = "1234";
    int num = std::stoi(str);
    std::cout << "The number is " << num << std::endl;
    return 0;
}

运行上面的代码将输出以下结果:

The number is 1234

下面是使用stod将字符串转换为浮点数的示例:

#include <iostream>
#include <string>

int main()
{
    std::string str = "3.1415926";
    double num = std::stod(str);
    std::cout << "The number is " << num << std::endl;
    return 0;
}

运行上面的代码将输出以下结果:

The number is 3.14159
总结

本文介绍了在C/C++中将字符串转换为数字类型的多种方法。以上代码片段可以帮助程序员在实际编程中进行转换操作。在使用任何一种方法之前,请确保您在使用之前正确地验证了输入数据。