当前位置: 技术问答>linux和unix
C/C++类型转换的问题
来源: 互联网 发布时间:2015-11-20
本文导语: 各位前辈好! 我刚进入Linux下面的C/C++开发不久, 想问大家一个类型转换的问题, 怎样将整型,双精度型等数字类型转换成字符串? 怎样将字符转换成字符串? 请不吝赐教,非常感谢! | 转成字符串用sprintf将其...
各位前辈好!
我刚进入Linux下面的C/C++开发不久,
想问大家一个类型转换的问题,
怎样将整型,双精度型等数字类型转换成字符串?
怎样将字符转换成字符串?
请不吝赐教,非常感谢!
我刚进入Linux下面的C/C++开发不久,
想问大家一个类型转换的问题,
怎样将整型,双精度型等数字类型转换成字符串?
怎样将字符转换成字符串?
请不吝赐教,非常感谢!
|
转成字符串用sprintf将其它类型的数据输入到一个字符串
比如sprintf(char *str, const char *format, ...);
比如sprintf(char *str, const char *format, ...);
|
格式化字符串在C和C++标准中有四种:
sprintf
snprintf
ostringstream
另一个我忘了,
在Exception C++ Style一书中说,不要用sprintf。
sprintf
snprintf
ostringstream
另一个我忘了,
在Exception C++ Style一书中说,不要用sprintf。
|
如果担心越界,就用snprintf嘛.
反过来就可以atoi,atol,strtol等等.
反过来就可以atoi,atol,strtol等等.
|
STL的string?用string::c_str。
|
在Exception C++ Style一书中说,不要用sprintf。
===
是存在越界的可能:(
但C里仍然推荐使用:)
===
是存在越界的可能:(
但C里仍然推荐使用:)
|
如果你安装了boost库的话,可以用这个,很简单的:
#include
然后比如int->string
int i = 1;
下面可以这样用
lexical_cast(i);
#include
然后比如int->string
int i = 1;
下面可以这样用
lexical_cast(i);