整型与字符串型数据转换是各类题目中比较常见的一类数据转换形式,
但在Cpp中,二者的转换方法不如Java中较为简单的字符串拼接与Integer.parseInt()更为简单直接
整型转字符串:该方法自动导入
主要讲解to_string()方法
to_string() is included in basic_string.h
inline basic_string<char> to_string(int __val)
只能传入整型数据,有其他类型的数据即报错
字符串型转整型:需要导入stdlib.h 头文件
主要讲解隶属于atox()系数据转换方法的atoi(),
'atoi' used to convert a string to an integer value,
but function will not report conversion errors; consider using 'strtol' instead
其中括号内参数即为被转换字符串且要求为string,Cpp中string不可变,但要求必须为const char
不建议采用在括号内使用变量,否则强制要求为const char类型才能使用该函数
如果不能转换(构成字符串的全部为非数字字符时),返回值为0;
其余情况,自动切除收尾空白符,若字符串中间存在空白符及非数字字符则只录入此前的数据
另 :对于atof()转换double类型的数据,每个函数返回 double 值,
接收值由将输入字符作为数字解析而生成。 如果该输入无法转换为该类型的值,则返回值为 0.0。
此外还可以使用字符串流类(sstream)或的sscanf()和boost词汇表转换 (Boost库提供了一个内置函数“ lexical_cast(“ string”)”,该函数直接将字符串转换为数字。如果输入无效,则返回异常“ bad_lexical_cast”)
这两种方法来自网络,有待进一步研究
如若出现更高效便捷的方法将持续补充