字符与数字的转换:sprintf和sscanf
字符与数字的转换:sprintf和sscanf
简单介绍
sprintf和sscanf都是stdio.h头文件中的函数,请大家放心使用~
其中,sprintf可以将任意数字包括小数点(.)和负号(-)转换成字符串(这里指的char数组)
而sscanf则负责将字符串转化为任意类型的数字。
实例
#include <stdio.h>
#include <string.h>
int main(){
char a[100],e[100]="-";
int b=132,c=168;
sprintf(a,"%d.%d",b,c);
double d;
strcpy(e+1,a);
sscanf(e,"%lf",&d);
printf("%s\n%lf",a,d);
return 0;
}
可以看到,在上面的实例中,
- 我先使用sprintf将整型的b和c以及一个小数点(.)组合之后转化成字符串。(这个功能超强的啊)
- 然后用strcpy将e赋值成多了一个负号(-)的a。
- 再通过sscanf将浮点类型的d赋值上字符数组e的值。
- 最后输出a和d。