C C++ 数字与字符串的转化

数字转化为字符串


1.使用库函数将数字转换为字符串。

 使用库函数

 # include <stdio.h>

 # include <stdlib.h>

  ● itoa():将整型值转换为字符串

  ● ltoa():将长整型值转换为字符串

  ● ultoa():将无符号长整型值转换为字符串

           (char *) itoa (int Value,int Buffer,int Radix)  函数均有3个参数:第一个参数是要转换的数字,第二个参数是结果字符串头指针,第三个   参数是进制。返回值是结果头指针

  ● gcvt():将浮点型数转换为字符串,取四舍五入。

  ● ecvt():将双精度浮点型值转换为字符串,转换结果中不包含十进制小数点。

  ● fcvt():指定位数为转换精度,其余同ecvt()。

           (char *) fcvt (double Value,int FractionalDigitCount,int *PtDec,int *PtSign)函数有4个参数:第一个参数是要转换的浮点型值;第二个参数是转换结果中小数点右侧的位数;第三个参数是一个整数的指针,该整数用来返回转换结果中十进制小数点的位置;第四个参数也是指向一个整数的指针,该整数用来返回转换结果的符号(0对应于正值,1对应于负值)。fcvt()函数的转换结果中并不包含小数点,fcvt()函数返回在转换结果中小数点占据的位置。如返回5,表示在转换结果中小数点应该位于第5位后面。

            ecvt()函数同fcvt,不能指定精度。

            (char *) gcvt (double Value,int DigitCount,char *DstBuf) 函数转换结果中包含十进制小数点。


sprintf

# include <stdio.h>

示例:

    int a = 3;
          float b = 4.2f;
          char buf[30] = "";
          sprintf(buf, "%d,%f", a, b);//buf保存的内容为"3,4.2",可类似printf();


ostringstream

#include <sstream>

using namespace std;

示例:

int a = 3;
      float b = 4.2f;
      ostringstream s1;
      s1<<a<<","<<b; 可对比cout
      string s2 = s1.str();//s2保存的内容为"3,4.2"


   2.字符串转化为数字

 # include <stdio.h>

 # include <stdlib.h>

  ● atof():将字符串转换为双精度浮点型值。

  ● atoi():将字符串转换为整型值。

  ● atol():将字符串转换为长整型值。

  ● strtod():将字符串转换为双精度浮点型值,并报告不能被转换的所有剩余数字。

  ● strtol():将字符串转换为长整值,并报告不能被转换的所有剩余数字。

  ● strtoul():将字符串转换为无符号长整型值,并报告不能被转换的所有剩余数字。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值