21xrx.com
2024-11-22 04:03:30 Friday
登录
文章检索 我的文章 写文章
C++字符串转换为数字
2023-07-04 22:07:41 深夜i     --     --
C++ 字符串 转换 数字

C++是一种高级编程语言,它的灵活性和强大的功能使得它成为广泛使用的编程语言之一。在C++中,字符串是一种常见的数据类型。有时候,我们需要将字符串转换为数字类型,例如整数或浮点数。在本文中,我们将了解如何使用C++将字符串转换为数字。

首先,让我们看看如何将一个字符串转换为整数。C++提供了一个函数stoi,它可以将一个字符串转换为整数。以下是一个例子:


#include <iostream>

#include <string>

using namespace std;

int main() {

  string str = "123";

  int num = stoi(str);

  cout << "The number is " << num << endl;

  return 0;

}

在这个例子中,我们创建了一个字符串变量str,并将其设置为“123”。我们然后使用stoi函数将字符串转换为整数,并将结果存储在num变量中。最后,我们打印num的值。

现在,让我们看看如何将一个字符串转换为浮点数。C++提供了一个函数stof,它可以将一个字符串转换为浮点数。以下是一个例子:


#include <iostream>

#include <string>

using namespace std;

int main() {

  string str = "3.14";

  float num = stof(str);

  cout << "The number is " << num << endl;

  return 0;

}

在这个例子中,我们创建了一个字符串变量str,并将其设置为“3.14”。我们然后使用stof函数将字符串转换为浮点数,并将结果存储在num变量中。最后,我们打印num的值。

在C++中,我们还可以将一个字符串转换为长整数或双精度浮点数。C++提供了函数stol和stod,分别用于将字符串转换为长整数和双精度浮点数。以下是一些示例代码:


long num1 = stol("2147483648");  // 将字符串转换为长整数

double num2 = stod("3.1415926"); // 将字符串转换为双精度浮点数

需要注意的是,如果我们尝试将非数字的字符串转换为数字类型,C++将抛出一个invalid_argument异常。因此,在使用这些函数时,我们应该确保字符串包含数字。

总结一下,本文介绍了如何在C++中将字符串转换为数字类型。我们可以使用函数stoi、stof、stol和stod来实现这个目标。这些函数可以让我们方便地处理字符串和数字之间的转换。如果你是一名C++程序员,这些函数一定会派上用场。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复