holyya.com
2025-09-04 15:29:49 Thursday
登录
文章检索 我的文章 写文章
C++中string和int之间的转换方法
2023-07-04 08:26:56 深夜i     --     --
C++ string int 转换方法

C++是一门非常流行的编程语言,经常用于开发各种应用程序。在C++中常常需要将字符串类型的数据转换成整型类型的数据,或者将整型类型的数据转换成字符串类型的数据。这种转换在日常编程中非常常见,那么在C++中如何实现string和int之间的转换呢?

一、 string转int

1. C++11之前的方式:


#include <sstream>

int stringToInt(string str)

  int num;

  stringstream ss;

  ss << str;

  ss >> num;

  return num;

首先我们需要包含头文件"sstream",使用stringstream变量将字符串转换成int型数据,将变量赋值给num并返回。

例如:


string str = "245";

int num = stringToInt(str);

输出:num为245。

2. C++11之后的方式:


#include <string>

int stringToInt(string str)

{

  int num = stoi(str);

  return num;

}

使用C++11提供的函数stoi能够将字符串转换成int型数据,将转换结果直接返回。需要注意的是,如果字符串中包含非数字字符,则会抛出std::invalid_argument异常。

例如:


string str = "245";

int num = stringToInt(str);

输出:num为245。

二、 int转string

1. C++11之前的方式:


#include <sstream>

string intToString(int num)

  string str;

  stringstream ss;

  ss << num;

  ss >> str;

  return str;

同样,我们使用stringstream将int型数据转换成字符串,将变量赋值给str并返回。

例如:


int num = 245;

string str = intToString(num);

输出:str为"245"。

2. C++11之后的方式:


#include <string>

string intToString(int num)

{

  string str = to_string(num);

  return str;

}

使用C++11提供的函数to_string能够将int型数据转换成字符串,将转换结果直接返回。

例如:


int num = 245;

string str = intToString(num);

输出:str为"245"。

总结

本文分别介绍了C++中string和int之间的转换方法,包括C++11之前和C++11之后的方式。使用这些方法能够方便地完成日常开发中常见的类型转换需求。需要注意的是,在进行类型转换时,应该确保被转换的数据类型符合要求,否则会引发错误。

  
  

评论区

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