21xrx.com
2024-09-19 23:57:01 Thursday
登录
文章检索 我的文章 写文章
C++ 中数字转换为字符串的方法
2023-07-03 17:34:20 深夜i     --     --
C++ 数字 转换 字符串 方法

在C++中,为了实现数字和字符串之间的转换,有很多方法可供选择。数字转换为字符串是一种常见的操作,因为这样可以将数字输出到屏幕或文件中而不会丢失其值。

下面介绍几种C++中数字转换为字符串的方法:

1. stringstream

这是一个非常常用的方法。它是通过流的方式将数字转换为字符串。使用stringstream时,我们先从数字中构造一个流,然后将其输出到字符串中。

示例代码:


#include <iostream>

#include <string>

#include <sstream>

using namespace std;

int main() {

  int num = 123;

  stringstream ss;

  ss << num;

  string str = ss.str();

  cout << "num: " << num << endl;

  cout << "string: " << str << endl;

  return 0;

}

输出结果:


num: 123

string: 123

2. to_string

to_string()是一个C++11新增函数,它可以将数字转换成字符串。使用to_string()时,我们直接将数字作为参数传递给该函数即可。

示例代码:


#include <iostream>

#include <string>

using namespace std;

int main() {

  int num = 123;

  string str = to_string(num);

  cout << "num: " << num << endl;

  cout << "string: " << str << endl;

  return 0;

}

输出结果:


num: 123

string: 123

3. sprintf

sprintf()是C标准库中的一个函数,它可以将数字格式化为字符串。使用sprintf()时,我们需要指定输出的格式,然后将数字作为参数传递给该函数。

示例代码:


#include <iostream>

#include <cstdio>

using namespace std;

int main() {

  int num = 123;

  char str[100];

  sprintf(str, "%d", num);

  cout << "num: " << num << endl;

  cout << "string: " << str << endl;

  return 0;

}

输出结果:


num: 123

string: 123

4. boost库

除了上述方法外,我们也可以使用boost库提供的函数来实现数字和字符串之间的转换。需要先安装boost库,并在代码中添加相应的头文件。

示例代码:


#include <iostream>

#include <string>

#include <boost/lexical_cast.hpp>

using namespace std;

using namespace boost;

int main() {

  int num = 123;

  string str = lexical_cast<string>(num);

  cout << "num: " << num << endl;

  cout << "string: " << str << endl;

  return 0;

}

输出结果:


num: 123

string: 123

总结:

以上介绍了C++中数字转换为字符串的几种方法,每种方法都有自己的优点和缺点。根据具体情况选择合适的方法可以更加方便、快捷地完成代码编写。

  
  

评论区

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