C语言转换字符串和数字的库函数

#include<stdlib.h>
#include<stdio.h>
int main(){
	
	/*字符串变成数字 */
	char a[]="123",b[10]="-12.34";
	int num = atoi(a);
	printf("%d\n",num);
	
	/* double atof(const char *str)  字符串转换成double,函数返回转换后的双精度浮点数,如果没有执行有效的转换,则返回零(0.0)*/	
	double db = atof(b);
	printf("%.2lf\n",db);
	
	
	
	/*数字转换成字符串*/
	/*  radix必须在2-36的范围内。
	● char *itoa( int value, char *string,int radix): radix表示进制:将整型值转换为字符串。
 	● char*ltoa(long value,char *string,int radix):将长整型值转换为字符串。
 	● ultoa():将无符号长整型值转换为字符串。
 	● char *gcvt(double number, size_t ndigits, char *buf):将浮点型数转换为字符串,取四舍五入。参数ndigits 表示显示的位数。
	● char *ecvt(double value, int ndigit, int *decpt, int *sign):将双精度浮点型值转换为字符串,转换结果中不包含十进制小数点。如果少于ndigit个数字,该字符串用0填充。
		value是要转换的浮点数;ndigit是小数点后面的位数;*decpt表示小数点的位置;*sign表示符号,0为正数,1为负数。
	● fcvt():指定位数为转换精度,其余同ecvt()。
	   sprintf类似于printf,都是按照格式化字符串输出参数到目标。不过printf是输出到终端,而sprintf是输出到第一个参数的字符串中
  	*/
//	itoa(num,b,10);
//	printf("%s\n",b);
	
//	long int li = 123456l;
//	ltoa(li,b,10);
//	printf("%s\n",b);
	
//	double db =-12.34;
//	gcvt(db,4,b);
//	printf("%s\n",b);
	
//	double db = -12.34;
//	int ndigit =4,dec,sign;
//	char *c;
//	c = ecvt(db,ndigit,&dec,&sign);
//	printf("string = %s 小数点位置 = %d 符号 = %d\n",c, dec, sign);


	
//	double db = 12.34;
//	sprintf(b,"%.2lf",db);	
//	printf("%s\n",b);
} 
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

广大菜鸟

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值