C 从参数字符串中解析 double

标签 c parsing arguments

我正在尝试解析 C 中的参数值并将数字转换为 double 值。我有:

char *stringEnd; double num = strtod("123.0", &stringEnd);

我使用 "123.0" 只是为了测试函数,但它总是返回 0.0 的值。有人知道我做错了什么吗?

最佳答案

您是否包含相关标题?即: #include <stdlib.h>

不过首先(无论如何你应该一直这样做),尝试编译所有警告(在 GCC 上为 -Wall)。

如果您收到有关 strtod 的警告未定义,表明问题出在哪里。

这是一个讨厌的函数,因为 C 会隐式声明任何它没有原型(prototype)的函数返回 int。 !

关于C 从参数字符串中解析 double,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2220272/

相关文章:

改变LPC1768的UART波特率不起作用

Python:将查询字符串分解为关联数组不起作用

python - 用于在 python 中进行词法分析、标记化和解析的资源

java - 解析.java文件并分析其AST

python - 强制函数参数为字符串

c - 特定地址的内存转储的最佳数据类型

C 中的字符指针意外工作

c++将函数作为参数传递给另一个带有void指针的函数

c - Ubuntu Socket编程: Packets are repackaged between TX and RX

c# - Mono (Linux) 中带有 Args 的 Process.Run(),不启动进程