0

我一直在这里阅读有关 strtol 的一些文档 ,在示例中,一个人在新号码开始时使用空格来显示此功能。我是 C++ 新手,我不太了解指针以及它们是如何工作的,所以我决定问你这个问题。我可以使用点而不是空格来拆分数字吗?例如,如果我有这个:char text[] = "3.16.88"并且我想将它转换为三个不同的变量这样a = 3, b = 16, c = 88,我仍然可以使用 strtol 还是应该尝试其他方法?谢谢

4

1 回答 1

4

这正是文档所说的。

在小数的情况下,只会0..9解析数字,扫描将在下一个非数字处停止。

前导空格将自动被丢弃。如果要向前扫描下一个数字,则需要添加一个简单的循环以跳过非数字,从end_ptr可以strtol返回其参数之一的 开始(使用它;不要将其设置为NULL)。

于 2016-03-13T13:08:21.060 回答