c和c++如何把一个整数转化为string
2017-12-17 09:56
295 查看
C++
采用最原始的string, 然后按照十进制的特点进行算术运算得到int,但是这种方式太麻烦,这里不介绍了。
采用标准库中atoi函数。
对于其他类型也都有相应的标准库函数,比如浮点型atof(),long型atol()等等。
采用sstream头文件中定义的字符串流对象来实现转换。
采用标准库中的to_string函数。
不需要包含任何头文件,应该是在utility中,但无需包含,直接使用,还定义任何其他内置类型转为string的重载函数,很方便。
采用sstream中定义的字符串流对象来实现。
字符串流对象的str函数对于istringstream和ostringstream都适用,都可以获取流中的内容。
C:
#include "stdio.h"
#include <stdlib.h>
#include <string.h>
void main()
{
int n=123456789;
char str[20];
itoa(n, str, 10);
printf("%s\n",str);
}
一、string转int的方式
采用最原始的string, 然后按照十进制的特点进行算术运算得到int,但是这种方式太麻烦,这里不介绍了。采用标准库中atoi函数。
string s = "12"; int a = atoi(s.c_str());
对于其他类型也都有相应的标准库函数,比如浮点型atof(),long型atol()等等。
采用sstream头文件中定义的字符串流对象来实现转换。
istringstream is("12"); //构造输入字符串流,流的内容初始化为“12”的字符串 int i; is >> i; //从is流中读入一个int整数存入i中
二、int转string的方式
采用标准库中的to_string函数。int i = 12; cout << std::to_string(i) << endl;
不需要包含任何头文件,应该是在utility中,但无需包含,直接使用,还定义任何其他内置类型转为string的重载函数,很方便。
采用sstream中定义的字符串流对象来实现。
ostringstream os; //构造一个输出字符串流,流内容为空 int i = 12; os << i; //向输出字符串流中输出int整数i的内容 cout << os.str() << endl; //利用字符串流的str函数获取流中的内容
字符串流对象的str函数对于istringstream和ostringstream都适用,都可以获取流中的内容。
C:
#include "stdio.h"
#include <stdlib.h>
#include <string.h>
void main()
{
int n=123456789;
char str[20];
itoa(n, str, 10);
printf("%s\n",str);
}
相关文章推荐
- C++中,如何执行一个控制台命令并返回结果到字符串string中
- C++ 输入一个0-6的整数,转化成星期输出
- c++中如何把int转化为string
- c++如何将vector<char>转化成string
- c++ 一个二进制串转化为整数的解决方法
- 输入一个十进制整数,设计递归函数,将该整数转化为一个二进制数。 思考: 如何将一个十进制数转化成一个8进制和16进制数。
- C++ 一个问题:每次读取一个字符存入一个string中,最少读取100个字符,应该如何提高程序的性能?(C++ Primer 9.37 习题)
- C++:通过一个点的数据对象转换成字符串的例子来说明整数转化为字符串
- C++ 如何从string中删除一个字符?
- c++ 将一个char 转化为string
- C++如何求一个十进制数转化为二进制数之后1的个数
- C++如何将一个整数输出为小数
- C++如何判断一个string字符串,是否是数字
- 如何将一个String类型的数据转化为Map类型
- 如何判断一个数是不是2的整数次方
- 如何成为一个专业级的c++ 程序员--- An answer from quora
- C++中wstring与string相互转化
- 输入读入一个String 序列,计算元音字母的个数,然后再顺序输出--C++
- 将整数转化为一个任意进制的字符串,将任意进制的字符串转化为一个整数的代码
- c语言小程序之 如何输出一个整数的每一位的几种解法及优化