double2string.c

来自「spce061读写DS18B20(温度传感器)的程序」· C语言 代码 · 共 30 行

C
30
字号
void d2s(double in,char* out)
{
	double e=1e-8;
	unsigned int i=0,j=0;
	while(e<in)
	{
		e*=10;
		i++;
	}

	while(e>1e-8 && j<8)
	{	e/=10;
		j++;i--;
		if((char)(in/e+48)=='/')(*out++)=0;
		else
		(*out++)=(char)(in/e+48);
		if(e==1.0)(*out++)='.';
		in=in - ((int)(in/e))*e;
	}
	if(i>8)for(j=i;j>8;j--)(*out++)='0';
	*out=0;
}

/*int main()
{
	char buf[80];
	double x=1234567891234;
	d2s(x,buf);
	while(1);
}*/

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?