stringstream的用法 请教在C 里如何把string类型转换成long型?
请教在C 里如何把string类型转换成long型?
首先,ATOI不是VC的库函数,而是标准C的库函数,如果这个函数不在C中使用,可以通过stringstream进行转换,如下所示:#include<ssstream>std::String str(“123”)long numstd::stringstream sstrsstr<<strssstr>>numsstr.clear清除()//必须在下次转换之前调用此函数。如果您使用boost库,它会更简单:#include<boost/legal#铸造hpp和GTP管柱str(“123”)long num=boost::词法转换<long>(str)当然,boost的内部实现也是以stringstream的方式进行转换的
istringstream SS(s)
vector
int i
而(SS>>I)
{
v.pushu在后面有两种方式将字符串转换为int(i)
c 中string数据按空格分割转到int数组?
C:1。在C标准库中,使用ATOI:
#include<cstdlib>#include<string>std::string text=“152”int number=STD::ATOI(text)。C) _ustr())if(errno==ERANGE)//可能是STD::errno{//数字可能因为太大或太小而无法完全存储}else if(errno==??)//可能是einval{//无法转换为数字}
2。在C标准库中,使用stringstream:(stringstream可用于各种数据类型之间的转换)
#include<ssstream>#include<string>std::string Text=“152”int numberstd::stringstream SSSS<< Text//可以是其他数据类型SS>> number//string-> intif(!ss.很好()){//发生错误}SS<<编号//int->stringstring str=不锈钢结构()如果(!ss.很好()){//发生错误}
stringstream的用法 stringstream作用 清空stringstream
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。