C++ 中有没有 LONG转化STRING STRING 转化LONG 的库函数

注:除了ltoa atol
要直接转成 string 的

没有long和string互相转换的,但是有long(还有int,double,float等)和char*互相转化的函数,sprintf函数和sscanf函数。因此可以用char*作为中间类型
long转换为string的一个解决方案:
可以先用sprintf函数把long转换为char*,然后char*直接可以赋给string。
string转换为long的一个解决方案
先用string的成员函数c_str()转化为char*,再用sscanf函数将char*转为long。
sscanf和sprintf是C函数,头文件stdio.h,用法和scanf、printf相似
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-05-30
数字与字符相互转换,恩。。个人觉得数字->字符 如3D->2D 还是可行的,但如果是字符到数字,局限性还是挺大的,毕竟谁也不能保证string是只含数字字符的。如果真是从数字转为字符,自己写个函数就可以了。反过来的话,需要多考虑些限定。 你参考下以下的方法,希望对你有些帮助:
(转)
数字转字符串:
用C++的streanstream:
#include <sstream>
#Include <string>
string num2str(double i)
...{
stringstream ss;
ss<<i;
return ss.str();
}
字符串转数字:

int str2num(string s)
...{
int num;
stringstream ss(s);
ss>>num;
return num;
}
上面方法很简便, 缺点是处理大量数据转换速度较慢..
相似回答