我需要将整数和小数部分与小数分开,如4.343。
我们在C / C ++中是否有任何给出小数点位置的函数。得到之后我想我们可以使用atoi函数转换为数字。
谢谢!
答案 0 :(得分:5)
如果4.343
是字符串,请查看strchr
。
#include <string.h>
char src[] = "4.343";
char *p = strchr(src, ".");
然后您可以使用atoi
,如下所示。
#include <stdlib.h>
if (p != NULL)
{
*p = '\0';
res = atoi(src);
}
答案 1 :(得分:4)
你可以使用floor()
函数来获取整数部分,然后对于分数只是从原始值中减去整数部分......
答案 2 :(得分:1)
您还可以使用scanf或其亲属fscanf和sscanf
提取数据scanf("%d.%d",&a,&b);
然后a的位数等于位置。分数和整数部分也存储以备将来使用