提示:
- 虽然在c中可是使用类似于atoi之类的函数对字符串转换成整型,但是我们在这儿还是推荐使用这个函数
- 如果转换发生了错误,lexical_cast会抛出一个bad_lexical_cast异常,因此程序中需要对其进行捕捉。
下面是程序示例:
#include
#include
using namespace std;
using namespace boost;
int main()
{
string s = "123";
int a = lexical_cast(s);
double b = lexical_cast(s);
printf("%d/r/n", a 1);
printf("%lf/r/n", b 1);
try
{
//为了防止转化错误使用一个错误的例子
int c = lexical_cast("wrong_number");
}
catch(bad_lexical_cast & e)
{
printf("%s/r/n", e.what());
}
return 0;
}