字符串到数值类型的转换 :
strtod(p, ppend) 从字符串 p 中转换 double 类型数值,并将后续的字符串指针存储到 ppend 指向的 char* 类型存储。
strtol(p, ppend, base) 从字符串 p 中转换 long 类型整型数值,base 显式设置转换的整型进制,设置为 0 以根据特定格式判断所用进制,0x, 0X 前缀以解释为十六进制格式整型,0 前缀以解释为八进制格式整型
atoi(p) 字符串转换到 int 整型
atof(p) 字符串转换到 double 符点数
atol(p) 字符串转换到 long 整型
例程:
#include <STDIO.H>
#include <STDLIB.H>
void main(){
char *One="91.88";
char *Two="77.55";
float three;
int thr;
/*******************atof(p) 将字符串转换成为double浮点数***********/
three=atof(One)+atof(Two);
printf("%.2f \n",three);
/* ****************atoi(p) 将字符串转化了int 型**********************/
thr=atoi(One)+atoi(Two);
printf("%d \n",thr);
/* ****************atol(p) 将字符串转化了long型**********************/
//略
}
将数据类型转化为字符串:
#define toString(x) #x
char *baby=toString(12.2222222222222222);
//只能将现成的转化成为字符串,不接受变量的转化,这有啥用啊,如何接受变量呢,也就是说我在计算数值时不用考虑小数位数