c - 如何将字符串转换为 double 浮点值?

标签 c function

抱歉,如果标题令人困惑,我只需要一些经验丰富的程序员来尝试为我澄清一些事情。所以我的作业问题之一问我这个(语言是 c):

编写一个接收字符串并返回 double 浮点值的函数。函数声明如下所示

double convertFloat(char s[]);

请勿使用 strtol() 函数或任何其他标准 C 库函数。编写您自己的!...请注意,输入字符串可以具有以下任何示例格式:“1.34”、“-1.4554”、“6”。

我只是不确定如何解决这个问题,因为我不确定这里问的是什么。如果我必须编写一个函数来查找平方根或类似的东西,我可以做到这一点,但似乎我必须采用全是数字的字符串并将它们转换为 float ......只是不知道从哪里开始和谷歌搜索类似的东西没有产生任何结果。
提前谢谢大家。
- 戴维

最佳答案

从写作开始

unsigned int convertUnsignedInt(const char *s);
// e.g. convertUnsignedInt("42") == 42

这有点简单,因为您不必处理负数或分数,但它显示了一般原则。

关于c - 如何将字符串转换为 double 浮点值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42191184/

相关文章:

c - 将带有二维数组的结构传递给线程函数并获取其索引值

javascript - 在 React 中传递 Props 并将其子串到另一个组件中

c - 意外的函数行为

c - 尝试调用 execvp 来运行通过标准输入提供的程序名,但每次调用都失败

c - 如何让用 C 编写的程序在终端或命令提示符中执行命令?

c - C语言中Call Rand()和RdRand的速度有什么区别?

c++ - 函数调用发生在哪里?

function - 这个Go函数类型 "HandlerFunc"是怎么工作的,来自标准库 "net/http"

c++ - 在头文件中定义 C++ 函数是一种好习惯吗?

javascript - 从控制台调用 Javascript 函数