#include //codeblocks能使用,VS2013总是卡死?why?
#include
float StringToFloat(char *ch) //将字符串的数据转为浮点数,并返回其值
{
char *p = ch;
float v1 = 0, v2 = 0, t = 0.1;
while (*p != '\0'&&*p != '.') //尚未出现小数点时
{
v1 = v1 * 10 + *p - '0';
p++;
}
p++; //该p++十分重要,用于跳过小数点,之前的错误在于未加该语句
while (*p != '\0') //已经出现小数点
{
v2 += (*p - '0')*t;
t *= 0.1;
p++;
}
return (v1 + v2);
}
int main()
{
char str[50];
printf("input str\n");
scanf("%s", str);
printf("it is what you input: %s\n", str);
float num;
num = StringToFloat(str);
printf("it is what you change to: %f\n", num);
printf("That is all,thank you!\n");
return 1;
}
你的头文件是引用的哪个?单独写出来