【c语言】模拟实现库函数的atof函数

// 模拟实现库函数的atof函数#include <stdio.h>#include <string.h>#include <assert.h>#include <ctype.h>double my_atof(char const *p){double ret = 0;int flag = 1;int count = 0;assert(p != NULL);while (isspace(*p)){p++;}while (*p){if (count){count = count * 10;}if (*p == '+')p++;else if (*p == '-'){p++;flag = -1;}else if (*p == '.'){count++;p++;}else if (*p >= '0'&& *p <= '9'){ret = ret * 10 + (*p – '0');p++;}elsereturn 0;}return ret*flag / count;}int main(){printf("%f\n", my_atof(" +23.45"));printf("%f\n", my_atof(" -2.345"));printf("%f\n", my_atof("+234.5"));printf("%f\n", my_atof("-23.45"));printf("%f\n", my_atof("2.345"));printf("%f\n", my_atof("234.5"));printf("%f\n", my_atof(" ."));printf("%f\n", my_atof("12.3ab"));return 0;}<img src="?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />

版权声明:本文为博主原创文章,,未经博主允许不得转载。

你并不一定会从此拥有更美好的人生,

【c语言】模拟实现库函数的atof函数

相关文章:

你感兴趣的文章:

标签云: