21xrx.com
2024-12-22 21:05:44 Sunday
登录
文章检索 我的文章 写文章
C++中实现string和int类型之间的转换
2023-06-30 09:41:53 深夜i     --     --
C++ string int 类型 转换

在C++编程中,我们经常需要对不同类型的数据进行转换。其中,string和int类型相互转换也是其中比较常见的一种。本文主要介绍C++中如何实现string和int类型之间的转换。

1. string类型转换为int类型

C++中,可以使用“atoi”或“stringstream”函数将string类型转换为int类型:

(1)“atoi”函数

atoi函数是将字符数组或字符串转换成为整型数的一个函数,该函数原型如下:


int atoi(const char *str);

该函数的参数为字符数组或字符串,函数的返回值为整型数。使用该函数可以将string类型的数据转换为int类型的数据。

例如:


#include <cstdlib>

#include <iostream>

#include <string>

using namespace std;

int main()

{

  string str = "123";

  int num = atoi(str.c_str());

  cout << num << endl; // 输出:123

  return 0;

}

(2)“stringstream”函数

stringstream是一个将字符串流转换为其他类型的流,在C++中的定义如下:


#include <sstream>

std::stringstream s;

通过stringstream可以将string类型转换为int类型,如下所示:


#include<iostream>

#include<sstream>

#include<string>

using namespace std;

int main()

{

  string str("1234");

  stringstream ss(str);

  int num;

  ss >> num;

  cout << num << endl; // 输出:1234

  return 0;

}

2. int类型转换为string类型

C++中,可以使用“to_string”或“stringstream”函数将int类型转换为string类型。下面是具体的介绍:

(1)“to_string”函数

“to_string”函数可以将C++中大多数基本类型数据转化为字符串类型,其函数原型如下:


string to_string(int value);

该函数将一个int类型的整数转换为一个字符串,如果要将其他类型的数据转换为字符串,可以换成其他类型名称。

例如:


#include<iostream>

#include<string>

using namespace std;

int main()

{

  int num = 1234;

  string str = to_string(num);

  cout << str << endl; // 输出:1234

  return 0;

}

(2)“stringstream”函数

可以使用stringstream函数将int类型转换为string类型的数据,例如:


#include<iostream>

#include<sstream>

#include<string>

using namespace std;

int main()

{

  int num = 1234;

  stringstream ss;

  ss << num;

  string str = ss.str();

  cout << str << endl; // 输出:1234

  return 0;

}

总结

以上就是在C++中实现string和int类型之间的转换的两种方式。使用“atoi”和“to_string”函数,可以简单快捷地对数据类型进行转换。而使用“stringstream”函数,更加灵活,可以将不同的基本类型之间相互转换,而且代码可读性较强,便于维护和修改。开发者可以根据情况,灵活使用这些方法和函数。

  
  

评论区

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