写在文章开头的话
读完这篇文章后,你将学到下面的知识:
(1)如何利用标准库中的 std::stringstream 来完成字符串和数值类型的相互转换
(2)如何利用 C++11 提供的字符串转换函数,将std::string类型转换为数值类型
在C++编程中有时会遇到字符串和数字的相互转化,以前学习的时候老师喜欢将这种转化当成作业,要我们写函数实现。但是实际为了方便准确还是会优先使用STL来完成。
在 C 标准库中提供了字符串到数值类型的转化函数,但是没有提供数值到字符串的转换(不过有些系统如 Windows API中提供数值到字符串的转化)。先看看C标准库中的字符串转化函数,这些函数都包含在头文件 <cstdlib>中:
表1 C 标准库中的字符串转换函数
这些函数的用法想必都比较熟悉就不多说了,细节可以参考 C或C++ 标准库。这里主要说下借助 C++ 标准模板库中的 std::stringstream 来完成字符串的转换, 以及 C++11新增的 std::string 转换函数。