C/C++ 数字转化为字符串函数

----------------int型整数转换为字符串的函数:

char *_itoa( int value, char *string, int radix );

第一个参数:要输入的int整数

第二个参数:转换后的字符串

第三个参数:转换时按照radix进制进行转换。即转换为该数的radix进制后再转换为字符串

返回值:返回转换后字符串的首地址

------------------long型整数转换为字符串的函数:

char *_ltoa( long value, char *string, int radix );

第一个参数:要输入的long整数

第二个参数:转换后的字符串

第三个参数:转换时按照radix进制进行转换。即转换为该数的radix进制后再转换为字符串

返回值:返回转换后字符串的首地址

示例:

#include<iostream>
using namespace std;
int main()
{
	long a=12345678;
	char s[25];
	_ltoa(a,s,10);
	cout<<s<<endl;
	
	return 0;
}

-----------双精度浮点型(double)数转换为字符串,且字符串中包含小数点。此时的函数为:

char *_gcvt( double value, int digits, char *buffer );

第一个参数:要输入的双精度浮点数。

第二个参数:除小数点外所有数字的数目(即整数部分数字的数量+小数部分数字的数量,即是一共有几个数,例如:1132.253  ,此时第二个参数的值为:7)

第三个参数:用来存储转换后字符串的首地址的指针。也可以理解为转换后的字符串。

示例如下:

#include<iostream>
using namespace std;
int main()
{
	long a=13;
	char s[100];
	_gcvt(100.012,6,s);
	cout<<s;
	
	return 0;
}
这个程序的输出结果是:100.012.

注意:此时输出的并不是一个双精度数,而是一个字符串!


-----------双精度浮点型(double)数转换为字符串,但是字符串中不包含小数点。此时的函数为:

char *_fcvt( double value, int count, int *dec, int *sign );
第一个参数:要输入的双精度浮点数
第二个参数:小数点后面的数字的数目
第三个参数:存储小数点位置的指针
第四个参数:存储标志位的指针。如果双精度数为正值,则该指针所指向的值为0,否则为-1
返回值:该函数的返回值为转换后的字符串的首地址。
示例:
#include<iostream>
using namespace std;
int main()
{
	double a=13.62832;
	char*s;
	int dig;
	int sign;
	s=_fcvt(a,5,&dig,&sign);
	cout<<s<<" "<<dig<<" "<<sign;
	
	return 0;
}
输出结果:1362832 2 0
其中 dig存储的是小数点的位置。例如13.62832.则小数点在第二位,所以dig=2;


  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值